-
Постов
851 -
Зарегистрирован
-
Победитель дней
129
Весь контент Andrey Efimov
-
Скинуть исходники в личку есть возможность? Я знаю только один способ, но не исключено, что есть ещё...
-
Сейчас я разбираюсь как вы получили разрешения в обход системы безопасности...
-
Пару минут, проверю на 8.1
-
Отлично, теперь давайте по порядку. и скорее всего это не соответствует действительности. Объясню почему, кратко. А подробнее можно почитать по ссылке ниже. С Android 6 (API 23) были усилены меры безопасности. Разрешения (Uses Permissions) были поделены на две категории "Обычные" и "Опасные". Отличие заключается в том, что: на версиях Андроид до 6 достаточно прописать разрешения в манифесте на версиях Андроид 6 и выше, опасные разрешения необходимо прописать в манифесте и запрашивать в режиме реального времени, т.е. прямо во время выполнения приложения. Тут важно добавить, что есть способ обойти эти меры безопасности, но не факт что он будет работать на новых версиях Андроида, поэтому озвучивать его не буду. В вашем манифесте море опасных разрешений и соответственно они не могли быть получены через манифест на версиях Андроид >=6. Вы явно указываете, что ваше приложение поддерживает Андроид 4.0 и разрабатывалось для Андроид 9. А значит вы уже обязаны запрашивать разрешения в режиме реального времени. Примечание. Студия 10.2.* и 10.3.* официально не поддерживают Андроид 4.0-4.4.4, но приложения запускаются. Однако при использовании студии версии 10.3.3 и некоторых компонентов вы увидите кучу ошибок или AV на версиях Андроид 4.0-4.4.4. Есть серия статей, которые могут быть вам полезны: [Статья][Android] Серия статей на тему Uses Permissions
-
А где сам манифест? Какие разрешения пытаетесь получить? Версия Андроида? Дайте больше инфы, на форуме нет телепатов.
-
Ознакомьтесь с FireDAC.Stan.Option.TFDFetchOptions.RecordCountMode. И начните уже пользоваться поиском на форуме... Не один раз обсуждалась эта тема Показаны результаты для 'RecordCount' p.s. Тему перенёс в подходящий раздел.
-
Вы пробовали пользоваться поиском на форуме? (Думаю нет...) Работа с TInAppPurchase p.s. Тему перенёс в соответствующий раздел "TInAppPurchase"
-
Как и раньше, но теперь у них(других приложений) доступна версия 64-bit. 32-bit приложения не блочили. Разработчиков просто обязали в дополнение к 32 битной версии прикладывать 64 битную версию. Полный отказ от 32 битных приложений был запланирован на Август 2021.
-
[Статья][Android] Серия статей на тему Uses Permissions
Andrey Efimov опубликовал тема в Статьи и заметки
Обновлена серия статей на тему использования Uses Permissions. Uses Permissions: Теория Uses Permissions: Добавляем метод onRequestPermissionsResult в приложение (для Delphi 10.1/10.2) Uses Permissions: Практика (для Delphi 10.3) Автор: Андрей Ефимов -
Обратите внимание вот на эту заметку: Получаем информацию об устройстве (Device Information) Касательно данной темы, в заметке учитываются такие нюансы: Android API > 17; Android API < 17; и устройства не позволяющие кастомизировать Device Name.
-
Добавлю к сообщению от krapotkin'а, пример можно найти в семплах студии: C:\Users\Public\Documents\Embarcadero\Studio\20.0\Samples\Object Pascal\Multi-Device Samples\User Interface\Forms
-
Большое спасибо!
-
Пользуйтесь поиском! (всех касается) Результаты для 'громкость'. Темы: Медиа громкость Определение положение ползунка громкости
-
ИспользуйтеИспользуйте метод FMX.ListBox.TCustomComboBox.DropDown.
-
Документация по студии. Например: Mobile Tutorial: Using Location Sensors (iOS and Android) в самом начале указано какие разрешения нужны для использования. Документация по Android: Manifest.permission; Normal permissions; Dangerous permissions and permission groups
-
Вот эти "Get started with TV apps" рекомендации выполнены? (обратите внимание, что требуется специальная запись в манифесте)
-
Нет. Для Андроида - только Android Studio.
-
Например вот так. в программе: var LIntent: JIntent; begin LIntent := TJIntent.Create; LIntent.setClassName(TAndroidHelper.Context.getPackageName(), StringToJString('com.embarcadero.services.nameservice')); LIntent.putExtra(StringToJString('NameForValue'), StringToJString('Value')); TAndroidHelper.Activity.StartService(LIntent); в сервисе: function TDM.AndroidServiceStartCommand(const Sender: TObject; const Intent: JIntent; Flags, StartId: Integer): Integer; var Value: string; begin Value := JStringToString(Intent.getStringExtra(StringToJString('NameForValue'))); // дальше что-то делаем end;
-
Не обманывай людей . Это что: procedure onReceivePermissionsResult(const ASender: TObject; const AMessage: TMessage); ?
-
Вот так попробуйте: uses Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNI.App; procedure TForm1.Button1Click(Sender: TObject); var PackageManager: JPackageManager; PackageName: JString; LastUpdateTime: Int64; begin PackageManager := TAndroidHelper.Activity.getPackageManager; PackageName := TAndroidHelper.Context.getPackageName; LastUpdateTime := PackageManager.getPackageInfo(PackageName, 0).lastUpdateTime; // firstInstallTime end; p.s. А вообще, это вы должны были ещё в первом посте указать версию среды...
-
Через стиль можно сделать, "itembackground.color" ставим Null. Ну и прозрачность у самого компонента включаем.
- 5 ответов
-
- tlistviewitem
- tlistview
-
(и ещё 1 )
C тегом: