Как открыть предварительно подписанный URL-адрес AWS из бэкэнд в приложенииAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как открыть предварительно подписанный URL-адрес AWS из бэкэнд в приложении

Сообщение Anonymous »

Я получаю заданный URL -адрес AWS S3 (для PDF) от бэкэнда с помощью ответа API. Я хочу открыть этот PDF в самом приложении Android, надежно, не позволяя пользователю считать экранинг, копировать или загружать его извне. < /P>
ограничения: < /p>

не может использовать внешний браузер (например, Chrome), потому что PDF не должен копировать, загружаемый, или не может быть загруженным, или Lipe-Security. являются главными приоритетами. < /li>
< /ul>
Что я ищу:
Безопасный способ отображения этого предписанного PDF (из S3) в приложении с использованием либо: < /p>

web -revie Обходной путь, который уважает временный подписанный характер URL < /li>
< /ul>
Что я попробовал: < /p>

Открытие URL через Google Drive Viewer → Fails < /p>
val viewerUrl = "https://docs.google.com/gview?embedded=true&url=$myUrl"
webView.loadUrl(viewerUrl)
< /code>
< /li>
Открытие URL внутри Webview → не визуализирует < /p>
val viewerUrl = $publicUrl
webView.loadUrl(viewerUrl)
< /code>
< /li>
Пробое использовал 3-й стороны библиотеки PDF, такие как Androidpdfviewer → Неисправность < /p>
< /li>
< /ul>
filePath?.let { path ->
AndroidView(
factory = { ctx ->
PDFView(ctx, null).apply {
layoutParams = ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
)

fromFile(File(path))
.enableSwipe(true)
.swipeHorizontal(false)
.enableDoubletap(true)
.spacing(10)
.onError { t -> Log.e("PDFDebug", "PDF Load Error", t) }
.load()
}
},
modifier = Modifier.fillMaxSize()
)
} ?: Box(modifier = Modifier.fillMaxSize(), contentAlignment = Alignment.Center) {
CircularProgressIndicator()
}



Подробнее здесь: https://stackoverflow.com/questions/796 ... end-in-app
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»