這幾天在測試lazarus lamw,發現可以生成未簽名的apk文件,當生成簽名apk時也提示已生成簽名apk文件,但沒發現簽名apk的文件。
經排查發現是gradle-local-apksigner.bat文件里使用的android SDK的版本號和實際的不一樣。
經排查發現是gradle-local-apksigner.bat文件里使用的android SDK的版本號和實際的不一樣。



function TAndroidProjectDescriptor.HasBuildTools(platform: integer; out outBuildTool: string): boolean; begin Result:= True; if platform < 30 then outBuildTool:= '29.0.3' else outBuildTool:= '30.0.3'; end;
將30.0.3改為33.0.3,重新編譯安裝lazandroidwizardpack.lpk就可以。
function TAndroidProjectDescriptor.HasBuildTools(platform: integer; out outBuildTool: string): boolean; begin Result:= True; if platform < 30 then outBuildTool:= '29.0.3' else outBuildTool:= '33.0.3'; end;

2、LAMW\ide_tools\amw_ide_menu_items.pas
auxList.Clear; auxList.LoadFromFile(PathToAndroidProject + DirectorySeparator + 'gradle-local-apksigner.bat'); { .bat set Path=%PATH%;C:\android\sdk\platform-tools;C:\android\sdk\build-tools\29.0.2 set GRADLE_HOME=C:\android\gradle-6.6.1 set PATH=%PATH%;%GRADLE_HOME%\bin zipalign -v -p 4 C:\android\workspace\AppLAMWProject10\build\outputs\apk\release\AppLAMWProject10-armeabi-v7a-release-unsigned.apk C:\android\workspace\AppLAMWProject10\build\outputs\apk\release\AppLAMWProject10-armeabi-v7a-release-unsigned-aligned.apk apksigner sign --ks C:\android\workspace\AppLAMWProject10\applamwproject10-release.keystore --ks-pass pass:123456 --key-pass pass:123456 --out C:\android\workspace\AppLAMWProject10\build\outputs\apk\release\AppLAMWProject10-release.apk C:\android\workspace\AppLAMWProject10\build\outputs\apk\release\AppLAMWProject10-armeabi-v7a-release-unsigned-aligned.apk } strTemp:='apksigner sign --ks '+ winPathToAndroidProject + '\' + Lowercase(smallProjName) + '-release.keystore --ks-pass pass:' + ks_pass + ' --key-pass pass:' + key_pass + ' --out ' + winPathToAndroidProject + '\build\outputs\apk\release\' + SmallProjName + '-release.apk '+ winPathToAndroidProject + '\build\outputs\apk\release\' + SmallProjName+'-' + instructionChip + '-release-unsigned-aligned.apk'; auxList.Strings[4]:= strTemp; //auxList.SaveToFile(PathToAndroidProject + DirectorySeparator + 'gradle-local-apksigner.bat');//將這行注釋
重新編譯安裝amw_ide_tools.lpk

浙公網安備 33010602011771號