From 43d02079fabef4fb8dafe1bff41bea15073cddab Mon Sep 17 00:00:00 2001 From: ddrfan Date: Thu, 4 Mar 2021 11:09:40 +0800 Subject: [PATCH] add: android:requestLegacyExternalStorage="true" mod: check all permission. --- AndroidManifest.template.xml | 3 +- Unit1.fmx | 8 +-- Unit1.pas | 20 +++++-- pro_Lottery.deployproj | 101 +++++++++++++++++++---------------- pro_Lottery.dproj | 90 +++++++++++++++++-------------- pro_Lottery.identcache | Bin 176 -> 142 bytes 6 files changed, 127 insertions(+), 95 deletions(-) diff --git a/AndroidManifest.template.xml b/AndroidManifest.template.xml index 640072e..10c95df 100644 --- a/AndroidManifest.template.xml +++ b/AndroidManifest.template.xml @@ -17,7 +17,8 @@ android:icon="%icon%" android:theme="%theme%" android:hardwareAccelerated="%hardwareAccelerated%" - android:resizeableActivity="false"> + android:resizeableActivity="false" + android:requestLegacyExternalStorage="true"> <%provider%> <%application-meta-data%> diff --git a/Unit1.fmx b/Unit1.fmx index 6e67e53..370abb6 100644 --- a/Unit1.fmx +++ b/Unit1.fmx @@ -82097,6 +82097,10 @@ object Form5: TForm5 Left = 296 Top = 383 end + object MediaPlayer1: TMediaPlayer + Left = 480 + Top = 376 + end object ImageList1: TImageList Source = < item @@ -82126,8 +82130,4 @@ object Form5: TForm5 Left = 387 Top = 295 end - object MediaPlayer1: TMediaPlayer - Left = 480 - Top = 376 - end end diff --git a/Unit1.pas b/Unit1.pas index c9e5781..20b9d18 100644 --- a/Unit1.pas +++ b/Unit1.pas @@ -97,8 +97,7 @@ end; procedure TForm5.FormCreate(Sender: TObject); {$IFDEF ANDROID} var - FPermissionReadExternalStorage, - FPermissionWriteExternalStorage:String; + FPermissionReadExternalStorage,FPermissionWriteExternalStorage:String; {$ENDIF} begin {$IFDEF ANDROID} @@ -108,14 +107,27 @@ begin PermissionsService.RequestPermissions([FPermissionReadExternalStorage,FPermissionWriteExternalStorage], procedure(const APermissions: TArray; const AGrantResults: TArray) + var + i:Integer; + allok:Boolean; begin - if (AGrantResults[0] = TPermissionStatus.Granted) then + allok:=true; + for i:=0 to Length(AGrantResults)-1 do + begin + if (AGrantResults[i] <> TPermissionStatus.Granted) then + begin + allok:=false; + break; + end + end; + + if allok then begin TDialogService.ShowMessage('STORAGE permission granted, OK.'); end else begin - TDialogService.ShowMessage('STORAGE permission not granted'); + TDialogService.ShowMessage('STORAGE permission not granted !!!'); end; end); {$ENDIF} diff --git a/pro_Lottery.deployproj b/pro_Lottery.deployproj index cfc9a96..87aaa3c 100644 --- a/pro_Lottery.deployproj +++ b/pro_Lottery.deployproj @@ -50,10 +50,20 @@ True - - pro_Lottery\res\values\ - colors.xml - Android_Colors + + pro_Lottery\library\lib\arm64-v8a\ + libpro_Lottery.so + ProjectOutput + 1 + + + True + True + + + pro_Lottery\ + AndroidManifest.xml + ProjectAndroidManifest 1 @@ -77,10 +87,10 @@ True - - pro_Lottery\classes\ - classes.dex - AndroidClassesDexFile + + pro_Lottery\res\values-v21\ + styles.xml + AndroidSplashStylesV21 1 @@ -95,38 +105,28 @@ True - - pro_Lottery\ - AndroidManifest.xml - ProjectAndroidManifest - 1 - - - True - - - pro_Lottery\res\drawable-large\ - splash_image.png - Android_SplashImage640 + + pro_Lottery\res\values\ + colors.xml + Android_Colors 1 True - - pro_Lottery\library\lib\arm64-v8a\ - libpro_Lottery.so - ProjectOutput + + pro_Lottery\classes\ + classes.dex + AndroidClassesDexFile 1 True - True - - pro_Lottery\res\values-v21\ - styles.xml - AndroidSplashStylesV21 + + pro_Lottery\res\drawable-large\ + splash_image.png + Android_SplashImage640 1 @@ -159,37 +159,37 @@ True - - pro_Lottery\res\drawable\ - splash_image_def.xml - AndroidSplashImageDef + + pro_Lottery\library\lib\armeabi\ + libpro_Lottery.so + AndroidLibnativeArmeabiFile 1 True - - pro_Lottery\res\values\ - styles.xml - AndroidSplashStyles + + pro_Lottery\res\drawable-mdpi\ + ic_notification.png + Android_NotificationIcon24 1 True - - pro_Lottery\library\lib\armeabi\ - libpro_Lottery.so - AndroidLibnativeArmeabiFile + + pro_Lottery\res\drawable\ + splash_image_def.xml + AndroidSplashImageDef 1 True - - pro_Lottery\res\drawable-mdpi\ - ic_notification.png - Android_NotificationIcon24 + + pro_Lottery\res\values\ + styles.xml + AndroidSplashStyles 1 @@ -204,6 +204,15 @@ True + + pro_Lottery\res\drawable-xxxhdpi\ + ic_launcher.png + Android_LauncherIcon192 + 1 + + + True + pro_Lottery\res\drawable-xxhdpi\ ic_notification.png diff --git a/pro_Lottery.dproj b/pro_Lottery.dproj index 3640a1a..09c6622 100644 --- a/pro_Lottery.dproj +++ b/pro_Lottery.dproj @@ -1,7 +1,7 @@  {C012C57E-3192-4D37-8F08-560EEEAFC441} - 19.1 + 19.2 FMX pro_Lottery.dpr True @@ -88,19 +88,14 @@ false false System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace) - true - true - true - true - true true - true - true $(BDS)\bin\delphi_PROJECTICON.ico $(BDS)\bin\delphi_PROJECTICNS.icns pro_Lottery true true + true + true DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FMXTee;soaprtl;DbxCommonDriver;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage) @@ -122,10 +117,11 @@ $(BDS)\bin\Artwork\Android\FM_NotificationIcon_72x72.png $(BDS)\bin\Artwork\Android\FM_NotificationIcon_96x96.png android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png DBXSqliteDriver;RESTComponents;DBXInterBaseDriver;emsclientfiredac;tethering;DataSnapFireDAC;bindcompfmx;FmxTeeUI;fmx;FireDACIBDriver;FireDACDBXDriver;dbexpress;IndyCore;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;soapserver;bindengine;CloudService;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;IndyIPServer;IndySystem;fmxFireDAC;FireDAC;FireDACSqliteDriver;FMXTee;soaprtl;DbxCommonDriver;xmlrtl;soapmidas;DataSnapNativeClient;FireDACDSDriver;rtl;DbxClientDriver;CustomIPTransport;bindcomp;IndyIPClient;dbxcds;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;$(DCC_UsePackage) - package=com.ac.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=9;versionName=1.0.8;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=No TitleBar;hardwareAccelerated=true;apiKey= + package=com.ac.$(MSBuildProjectName);label=奥诚新春大抽奖;versionCode=12;versionName=1.0.12;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=No TitleBar;hardwareAccelerated=true;apiKey= Debug true res\ICON\cia_36.png @@ -143,11 +139,10 @@ res\ICON\cia_72.png res\ICON\cia_96.png android-support-v4.dex.jar;cloud-messaging.dex.jar;com-google-android-gms.play-services-ads-base.17.2.0.dex.jar;com-google-android-gms.play-services-ads-identifier.16.0.0.dex.jar;com-google-android-gms.play-services-ads-lite.17.2.0.dex.jar;com-google-android-gms.play-services-ads.17.2.0.dex.jar;com-google-android-gms.play-services-analytics-impl.16.0.8.dex.jar;com-google-android-gms.play-services-analytics.16.0.8.dex.jar;com-google-android-gms.play-services-base.16.0.1.dex.jar;com-google-android-gms.play-services-basement.16.2.0.dex.jar;com-google-android-gms.play-services-gass.17.2.0.dex.jar;com-google-android-gms.play-services-identity.16.0.0.dex.jar;com-google-android-gms.play-services-maps.16.1.0.dex.jar;com-google-android-gms.play-services-measurement-base.16.4.0.dex.jar;com-google-android-gms.play-services-measurement-sdk-api.16.4.0.dex.jar;com-google-android-gms.play-services-stats.16.0.1.dex.jar;com-google-android-gms.play-services-tagmanager-v4-impl.16.0.8.dex.jar;com-google-android-gms.play-services-tasks.16.0.1.dex.jar;com-google-android-gms.play-services-wallet.16.0.1.dex.jar;com-google-firebase.firebase-analytics.16.4.0.dex.jar;com-google-firebase.firebase-common.16.1.0.dex.jar;com-google-firebase.firebase-iid-interop.16.0.1.dex.jar;com-google-firebase.firebase-iid.17.1.1.dex.jar;com-google-firebase.firebase-measurement-connector.17.0.1.dex.jar;com-google-firebase.firebase-messaging.17.5.0.dex.jar;fmx.dex.jar;google-play-billing.dex.jar;google-play-licensing.dex.jar - 9 + 12 disabled center #000000 - false false false false @@ -155,6 +150,7 @@ false .\$(Platform) .\$(Platform) + $(BDS)\bin\Artwork\Android\FM_LauncherIcon_192x192.png DBXSqliteDriver;RESTComponents;fmxase;DBXDb2Driver;DBXInterBaseDriver;vclactnband;vclFireDAC;bindcompvclsmp;emsclientfiredac;tethering;svnui;DataSnapFireDAC;FireDACADSDriver;DBXMSSQLDriver;DatasnapConnectorsFreePascal;FireDACMSSQLDriver;unidac270;vcltouch;vcldb;bindcompfmx;svn;crcontrols270;DBXOracleDriver;inetdb;FmxTeeUI;emsedge;fmx;FireDACIBDriver;fmxdae;vcledge;FireDACDBXDriver;dbexpress;IndyCore;vclx;dsnap;emsclient;DataSnapCommon;FireDACCommon;RESTBackendComponents;DataSnapConnectors;VCLRESTComponents;soapserver;dacfmx270;vclie;bindengine;DBXMySQLDriver;CloudService;FireDACOracleDriver;FireDACMySQLDriver;DBXFirebirdDriver;FireDACCommonODBC;FireDACCommonDriver;DataSnapClient;inet;IndyIPCommon;bindcompdbx;vcl;IndyIPServer;DBXSybaseASEDriver;dacvcl270;IndySystem;vquery270;FireDACDb2Driver;dac270;dsnapcon;FireDACMSAccDriver;fmxFireDAC;FireDACInfxDriver;vclimg;unidacfmx270;TeeDB;FireDAC;emshosting;FireDACSqliteDriver;FireDACPgDriver;FireDACASADriver;DBXOdbcDriver;FireDACTDataDriver;FMXTee;soaprtl;DbxCommonDriver;Tee;DataSnapServer;xmlrtl;soapmidas;DataSnapNativeClient;fmxobj;vclwinx;FireDACDSDriver;rtl;emsserverresource;DbxClientDriver;DBXSybaseASADriver;CustomIPTransport;vcldsnap;unidacvcl270;bindcomp;appanalytics;DBXInformixDriver;IndyIPClient;bindcompvcl;TeeUI;dbxcds;VclSmp;adortl;FireDACODBCDriver;DataSnapIndy10ServerTransport;dsnapxml;DataSnapProviderClient;dbrtl;IndyProtocols;inetdbxpress;FireDACMongoDBDriver;DataSnapServerMidas;$(DCC_UsePackage) @@ -190,7 +186,7 @@ true - 7 + 12 false @@ -211,8 +207,7 @@ 0 - 9 - package=com.ac.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=9;versionName=1.0.8;persistent=False;restoreAnyVersion=False;installLocation=auto;largeHeap=False;theme=No TitleBar;hardwareAccelerated=true;apiKey= + 12 true @@ -259,8 +254,6 @@ pro_Lottery.dpr - Embarcadero C++Builder Office 2000 Servers Package - Embarcadero C++Builder Office XP Servers Package Microsoft Office 2000 Sample Automation Server Wrapper Components Microsoft Office XP Sample Automation Server Wrapper Components @@ -272,7 +265,13 @@ true - + + + libpro_Lottery.so + true + + + true @@ -289,9 +288,9 @@ true - + - classes.dex + styles.xml true @@ -301,26 +300,20 @@ true - - - true - - - + - splash_image.png true - + - libpro_Lottery.so + classes.dex true - + - styles.xml + splash_image.png true @@ -352,11 +345,6 @@ true - - - true - - Assets\ @@ -364,14 +352,20 @@ true - + + libpro_Lottery.so true - + + + ic_notification.png + true + + + - libpro_Lottery.so true @@ -386,9 +380,8 @@ true - + - ic_notification.png true @@ -397,6 +390,12 @@ true + + + ic_launcher.png + true + + ic_notification.png @@ -568,6 +567,16 @@ 1 + + + res\drawable-xxxhdpi + 1 + + + res\drawable-xxxhdpi + 1 + + res\drawable-ldpi @@ -1192,6 +1201,7 @@ False True + False True False diff --git a/pro_Lottery.identcache b/pro_Lottery.identcache index c6e08ce1f7f49538dbb59fa9317b04b1be784de2..fca0887dc5eadae63934f2af81bf7db7b6f300f5 100644 GIT binary patch literal 142 zcmZQ#U|=wHv5E=LFUl?sD9ZOsEsqIEEh^5>OU#K0a&(E0a5XfDNlcE<$uB8MEvk$O j&C4t?)GJ6V25N)@Yf?-oD9VrbftaS3Qcwgp1jqmYSqmzk literal 176 zcmZQ#U|?`_wu%WYPAw{q3C_sO&x>)%PcF?(%_}L6am`IiEJ{vHNiE8c2`(v3$;^)l yD9X=DO$N&OAB7FEWC=4F-`>J=mw15JVhABv1DD9VqA8n2g9Py{y>$N&J#ZaPN* -- GitLab