Я пытаюсь обновить приложение в Google Glass программным способом, но каждый раз выдает следующее сообщение об ошибке:
Failed to find configured root that contains /storage/emulated/0/Android/data/com.bp2go.glassapkupdater/files/Pictures/apks/app-release.apk
Manifest.xml
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
My provider_paths.xml:
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<external-path name="apks" path="Android/data/com.bp2go.glassapkupdater/Pictures/apks"/>
и мой метод для вызова apk:
var path_apk = getExternalFilesDir(Environment.DIRECTORY_PICTURES).toString()+"/apks/"
val fileName = "app-release.apk"
val path_to_apk = path_apk+fileName
val intent = Intent(Intent.ACTION_INSTALL_PACKAGE)
intent.setDataAndType(FileProvider.getUriForFile(this, "com.bp2go.glassapkupdater.fileprovider", File(path_to_apk)), "application/vnd.android.package-archive")
intent.flags = Intent.FLAG_GRANT_READ_URI_PERMISSION
startActivity(intent)
, но когда я использую следующие строки:
val intent = Intent(Intent.ACTION_INSTALL_PACKAGE)
intent.setDataAndType(Uri.fromFile(outputFile),
"application/vnd.android.package-archive")
startActivity(intent)
Я получил следующую ошибку приначало:
"There was a problem parsing the package".
.apk находится во внутреннем хранилище в Pictures / apks /, не имеет внешнего хранилища на Google Glass.Что я делаю не так?