Я пытаюсь написать следующий кодовый блок, который, кажется, достигает проблемы сравнения типа компилятора, независимо от того, что я делаю. < /p>
uses
Fmx.Types,
System.Permissions,
androidapi.Helpers, // JStringToString
androidapi.JNI.JavaTypes,
androidapi.JNI.Os, // isExternalStorageManager etc
...
+
PermissionsService.RequestPermissions(
[
JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE),
JStringToString(TJManifest_permission.JavaClass.WRITE_EXTERNAL_STORAGE),
JStringToString(TJManifest_permission.JavaClass.MANAGE_EXTERNAL_STORAGE )
],
{RequestPermission}
procedure ( const APermissions: TClassicStringDynArray; const AGrantResults: TArray {TClassicPermissionStatusDynArray})
begin
if PermissionsService.IsEveryPermissionGranted(AGrantResults) then
ThenDo;
end,
{ExplainReason}
procedure (const APermissions: TClassicStringDynArray; const APostRationaleProc: TProc)
begin
TDialogService.ShowMessage( UserMessage,
procedure(const AResult: TModalResult)
begin
APostRationaleProc;
end)
end
);
< /code>
Проблемная часть - это две линейки: < /p>
procedure ( const APermissions: TClassicStringDynArray; const AGrantResults: TArray {TClassicPermissionStatusDynArray})
begin
if PermissionsService.IsEveryPermissionGranted(AGrantResults) then
< /code>
Вопрос в том, каким должен быть список параметров анонимного метода и типы. Если я заставлю Agrantresults быть типа tclassicpermissionStatusDynarray, то я не могу назвать ressissionsservice.isevermishismissedgranted из -за несоответствия типа, вызывая непревзойденное, и если я сделаю это Tarray, то компилятор не совпадает с каким -либо перегрузкой для меня, как и на меня, не соответствует мне, не соответствует мне, как это не так, как это не соответствует мне, и если я сделаю это Tarray. Что -то может быть плохой в самом RTL, что -то разбитое в Delphi 12.2, которое не было разбито в более ранних версиях, или что сам компилятор не может признать, что два псевдонима на самом деле являются псевдонимом для того же самого, что является Tarray. вспомогательный метод? Здесь есть что -то еще, что я могу работать с другим синтаксисом или именованием типа?
Подробнее здесь: https://stackoverflow.com/questions/794 ... ler-errors
Как вы звоните в Delphi 12.2, без ошибок компилятора? ⇐ Android
Форум для тех, кто программирует под Android
-
Anonymous
1741626617
Anonymous
Я пытаюсь написать следующий кодовый блок, который, кажется, достигает проблемы сравнения типа компилятора, независимо от того, что я делаю. < /p>
uses
Fmx.Types,
System.Permissions,
androidapi.Helpers, // JStringToString
androidapi.JNI.JavaTypes,
androidapi.JNI.Os, // isExternalStorageManager etc
...
+
PermissionsService.RequestPermissions(
[
JStringToString(TJManifest_permission.JavaClass.READ_EXTERNAL_STORAGE),
JStringToString(TJManifest_permission.JavaClass.WRITE_EXTERNAL_STORAGE),
JStringToString(TJManifest_permission.JavaClass.MANAGE_EXTERNAL_STORAGE )
],
{RequestPermission}
procedure ( const APermissions: TClassicStringDynArray; const AGrantResults: TArray {TClassicPermissionStatusDynArray})
begin
if PermissionsService.IsEveryPermissionGranted(AGrantResults) then
ThenDo;
end,
{ExplainReason}
procedure (const APermissions: TClassicStringDynArray; const APostRationaleProc: TProc)
begin
TDialogService.ShowMessage( UserMessage,
procedure(const AResult: TModalResult)
begin
APostRationaleProc;
end)
end
);
< /code>
Проблемная часть - это две линейки: < /p>
procedure ( const APermissions: TClassicStringDynArray; const AGrantResults: TArray {TClassicPermissionStatusDynArray})
begin
if PermissionsService.IsEveryPermissionGranted(AGrantResults) then
< /code>
Вопрос в том, каким должен быть список параметров анонимного метода и типы. Если я заставлю Agrantresults быть типа tclassicpermissionStatusDynarray, то я не могу назвать ressissionsservice.isevermishismissedgranted из -за несоответствия типа, вызывая непревзойденное, и если я сделаю это Tarray, то компилятор не совпадает с каким -либо перегрузкой для меня, как и на меня, не соответствует мне, не соответствует мне, как это не так, как это не соответствует мне, и если я сделаю это Tarray. Что -то может быть плохой в самом RTL, что -то разбитое в Delphi 12.2, которое не было разбито в более ранних версиях, или что сам компилятор не может признать, что два псевдонима на самом деле являются псевдонимом для того же самого, что является Tarray. вспомогательный метод? Здесь есть что -то еще, что я могу работать с другим синтаксисом или именованием типа?
Подробнее здесь: [url]https://stackoverflow.com/questions/79498685/how-do-you-call-requestpermissions-in-delphi-12-2-without-compiler-errors[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия