Перейти к содержанию
  • Регистрация
  • 0
Yuriy2606

API level 26 ??? Всё таки как выложить приложение на Play Market?

Вопрос

Здравствуйте коллеги.

Написал приложение с необходимостью разрешений LocalSensor, MediaLibrary, Read/Write Storage и т.д. С АПИ Левел 14 все работало на ура. Дошел до выкладки на Play Market и уперся в API level 26. Нашел решение для Tokio (у меня Berlin) - KastriFree ( https://www.delphiworlds.com/2018/06/targeting-android-8-and-higher-continued/)

попробовал реализовать как в статье и все равно не работает, приложение просто закрывается сразу после открытия. Ошибка I/O 17 в первом же месте обращения к файлам на карте памяти. Если в манифесте указать таргетлевел 14, то все нормально запускается и работает. Но такое приложение не пускает фильтр Play Marketa.

Что делать? Как быть?

И еще, думал скачать RAD 10.3 Community, получил на почту ключ, но на этапе установки после ввода ключа пишет, что не может обратиться к серверу.

Если кто знает ответ - дайте ссылку, пожалуйста.

Изменено пользователем Yuriy2606

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Рекомендуемые сообщения

  • 0

@Yuriy2606, нужно динамически запрашивать необходимые разрешения у пользователя.

Наверное, правильнее будет установить 10.3 CE, там поддержка получения разрешений идет из коробки (модуль System.Permissions). Плюс 10.3 поддерживает android 9

Что касается получения ключа, то проверьте, что у вас в hosts и нет ли блокировки доступа bds.exe к Интернет на уровне антивируса

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
2 минуты назад, Tumaso сказал:

@Yuriy2606, нужно динамически запрашивать необходимые разрешения у пользователя

Большое спасибо за ответ. Еще раз внимательнее все проверив у меня все таки получилось динамически запросить разрешения при помощи KastriFree  в Berline
   

Запрос сделал так

 {cPermissionACCESS_COARSE_LOCATION = 'android.permission.ACCESS_COARSE_LOCATION';
    cPermissionACCESS_FINE_LOCATION = 'android.permission.ACCESS_FINE_LOCATION';
    cPermissionACCESS_NETWORK_STATE = 'android.permission.ACCESS_NETWORK_STATE';
    cPermissionCALL_PHONE = 'android.permission.CALL_PHONE';
    cPermissionCAMERA = 'android.permission.CAMERA';
    cPermissionINTERNET = 'android.permission.INTERNET';
    cPermissionREAD_EXTERNAL_STORAGE = 'android.permission.READ_EXTERNAL_STORAGE';
    cPermissionREAD_PHONE_STATE = 'android.permission.READ_PHONE_STATE';
    cPermissionWAKE_LOCK = 'android.permission.WAKE_LOCK';
    cPermissionWRITE_EXTERNAL_STORAGE = 'android.permission.WRITE_EXTERNAL_STORAGE'; }

 FRequester.RequestPermissions([cPermissionACCESS_FINE_LOCATION,cPermissionACCESS_COARSE_LOCATION,cPermissionREAD_EXTERNAL_STORAGE, cPermissionWRITE_EXTERNAL_STORAGE, cPermissionCAMERA], cPermissionsCodeExternalStorage);

Обработка так

procedure TForm1.PermissionsResultHandler(Sender: TObject; const ARequestCode: Integer; const AResults: TPermissionResults);
begin
  case ARequestCode of
    cPermissionsCodeExternalStorage:
    begin
      if AResults.AreAllGranted then
        DoShow; //Что-то делаем
      else
        ShowMessage('You need to grant all required permissions for the app to be able to take photos!');
    end;
    cPermissionsCodeSMS:
    begin
      if AResults.AreAllGranted then
        ShowMessage('SMS permissions granted')
      else
        ShowMessage('You need to grant all required permissions for the app to be able to handle SMS!');
    end;
  end;
end;

Там в коде примера KastriFree все описано более подробно

https://www.delphiworlds.com/2018/06/targeting-android-8-and-higher-continued/

Вот ссылка, это для тех, у кого Berlin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
  • 0
13 минут назад, Tumaso сказал:

то проверьте, что у вас в hosts

Там всё закомментарено, нет ни одной открытой строчки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...