Запустите .apk из приложения Delphi FMX Android.Android

Форум для тех, кто программирует под Android
Anonymous
Запустите .apk из приложения Delphi FMX Android.

Сообщение Anonymous »

Здравствуйте, мне нужно сделать автоматическое обновление моего приложения, которое я написал в Delphi для устройств Android.
Я проверяю наличие новой версии и загружаю ее в каталог «Downlaod».

Код: Выделить всё

DownloadPath := TPath.GetDownloadsPath + '/AppName.apk';
Я создал файлProvider_path.xml со следующим кодом в файл манифеста добавлено следующее

Код: Выделить всё

    
        android:name="androidx.core.content.FileProvider"
android:authorities="com.embarcadero.appname.provider_paths"
android:grantUriPermissions="true"
android:exported="false">


и пытаюсь вызвать эту функцию, чтобы открыть файл .apk

Код: Выделить всё

    procedure TfrmMain.StartAct;
var
Intent: JIntent;
Authority: JString;
LUri: Jnet_Uri;
begin
Authority := StringToJString(JStringToString(TAndroidHelper.Context.getApplicationContext.getPackageName) + '.fileprovider');
LUri := TJcontent_FileProvider.JavaClass.getUriForFile(TAndroidHelper.Context, Authority, TJFile.JavaClass.init(StringToJString(TPath.GetDownloadsPath + '/' + 'AppName.apk')));
Intent := TJIntent.Create;
Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
Intent.setFlags(TJIntent.JavaClass.FLAG_ACTIVITY_NEW_TASK);
Intent.addFlags(TJIntent.JavaClass.FLAG_GRANT_READ_URI_PERMISSION);
Intent.setDataAndType(LUri, StringToJString('application/vnd.android.package-archive'));
TAndroidHelper.Activity.startActivity(Intent);
Application.Terminate();
end;
но это не сработало. И я понятия не имею, почему :(
Выход с ошибкой

не удалось обработать пакет

Что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/790 ... mx-android

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