Adobe-Runtime-Support
Adobe-Runtime-Support copied to clipboard
package -arch all error
Steps to Reproduce
call adt -package -target apk-captive-runtime -arch all -storetype pkcs12 -keystore "..\..\..\cert\xxx.p12" -storepass xxx..\..\..\bin-release\xxx.apk app.xml -C ..\..\..\bin . -extdir ..\..\..\lib
Error
-arch must be followed by (armv7 | x86 | armv8 | x64)
But according to https://airsdk.dev/docs/building/air-developer-tool/commands/package
-arch
Application developers can use this argument to create an APK for a specific platform architecture, it takes following values:
armv7 - ADT packages an APK for the Android armv7 platform.
armv8 - ADT packages an APK for the Android armv8 platform.
x86 - ADT packages an APK for the Android Intel x86 platform.
x64 - ADT packages an APK for the Android Intel x64 platform.
all - ADT packages a "universal APK" containing all architectures.
I can package universal APK with -arch all
Known Workarounds
Air SDK:50.1
<uses-sdk
android:minSdkVersion="21"
android:targetSdkVersion="33" />
The all
option should be possible with an APK target, and when you're using the 'new' Gradle-based build system. Possibly it's the second of these checks which is failing.. are you able to get more debug info via the adt.log file, or from using the AIR SDK Manager "troubleshooting" page?
thanks
I‘m just using the cmd to package with AIRSDK 50.2.4.4
and the adt -help shows
so i guess the adt do not support -arch all
This works fine for us - the help output is missing this option, as you've highlighted, but as long as it's building an APK file with Gradle, then -target apk -arch all
is working fine here...
This works fine for us - the help output is missing this option, as you've highlighted, but as long as it's building an APK file with Gradle, then
-target apk -arch all
is working fine here...
The -arch only allow (armv7 | x86 | x64 | armv8 ).When I use -target apk -arch all,an error has occurred -arch must be followed by (armv7 | x86 | armv8 | x64).
This problem has been bothering us for a long time. Usually, the app store can only upload one APK package which must include armv7 and armv8, except for Google Play.
It is really important for an APK package to support multiple platforms.
We'd need to see the ADT log to see why this isn't working in your case. Are you able to provide this please:
- either, add
DebugOut=true
to a file in c:\users\username.airsdk\adt.cfg, then run the ADT command again, and check the contents of c:\users\username\adt.log - or, open up the AIR SDK Manager, go to the Troubleshooting page, and then run the ADT command again
thanks
*** ADT Logging at 2024/04/10 14:51:39 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -package -tsa none -storetype pkcs12 -keystore D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\buildANE/key/air/cert.p12 -storepass xxxxxx -target ane Honor.ane extension.xml -swc Library.swc -platform Android-ARM -C Android-ARM/ . -platform Android-ARM64 -C Android-ARM64/ . *** ADT Logging at 2024/04/10 14:51:48 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -certificate -cn UnitedMindsetSelfSignedCertificate -ou Software Development -o UnitedMindset -c US 2048-RSA ${KEYSTORE} 111111 *** ADT Logging at 2024/04/10 14:51:50 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -package -target apk-captive-runtime -arch all -storetype jks -keystore key/apk/yttx-android.keystore -storepass xxxxxx D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/release/yttx-andBD-0.0.1-20240410-145138.apk D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build/Main-apk-app.xml -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build/Main.swf -extdir D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/ane -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/ane_assets . -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build -platformsdk D:/application/Android/Sdk Not requested a legacy APK build, but could not find Javac and/or Android SDK hence falling back to legacy build UsageError: -arch must be followed by (armv7 | x86 | armv8 | x64)
------------------ 原始邮件 ------------------ 发件人: "airsdk/Adobe-Runtime-Support" @.>; 发送时间: 2024年4月10日(星期三) 下午2:34 @.>; @.@.>; 主题: Re: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
We'd need to see the ADT log to see why this isn't working in your case. Are you able to provide this please:
either, add DebugOut=true to a file in c:\users\username.airsdk\adt.cfg, then run the ADT command again, and check the contents of c:\users\username\adt.log
or, open up the AIR SDK Manager, go to the Troubleshooting page, and then run the ADT command again
thanks
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>
Ah yes, so that's the issue:
Not requested a legacy APK build, but could not find Javac and/or Android SDK hence falling back to legacy build
Have you got Android Studio and an Android SDK installed? If so, ADT is failing to find these, so you would need to add them into the ADT config file: e.g.
JAVA_HOME=C:/Program Files/Java/jdk-11
AndroidPlatformSDK=C:/Users/username/AppData/Local/Android/Sdk
thanks
I have set it in the configuration file ..\lib\adt.cfg.
For convenience, rather than using "-platformsdk" on the command line, these can be set up here:
AndroidPlatformSDK=D:\application\Android\Sdk #iOSPlatformSDK=path_to_sdk
JAVA_HOME is usually picked up from an environment variable but this can override it:
JAVA_HOME=D:\application\jdk-11.0.17-full
------------------ 原始邮件 ------------------ 发件人: "yangjin1" @.>; 发送时间: 2024年4月10日(星期三) 下午2:53 @.@.>; @.@.***>; 主题: 回复: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
*** ADT Logging at 2024/04/10 14:51:39 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -package -tsa none -storetype pkcs12 -keystore D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\buildANE/key/air/cert.p12 -storepass xxxxxx -target ane Honor.ane extension.xml -swc Library.swc -platform Android-ARM -C Android-ARM/ . -platform Android-ARM64 -C Android-ARM64/ . *** ADT Logging at 2024/04/10 14:51:48 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -certificate -cn UnitedMindsetSelfSignedCertificate -ou Software Development -o UnitedMindset -c US 2048-RSA ${KEYSTORE} 111111 *** ADT Logging at 2024/04/10 14:51:50 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -package -target apk-captive-runtime -arch all -storetype jks -keystore key/apk/yttx-android.keystore -storepass xxxxxx D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/release/yttx-andBD-0.0.1-20240410-145138.apk D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build/Main-apk-app.xml -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build/Main.swf -extdir D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/ane -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/ane_assets . -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build -platformsdk D:/application/Android/Sdk Not requested a legacy APK build, but could not find Javac and/or Android SDK hence falling back to legacy build UsageError: -arch must be followed by (armv7 | x86 | armv8 | x64)
------------------ 原始邮件 ------------------ 发件人: "airsdk/Adobe-Runtime-Support" @.>; 发送时间: 2024年4月10日(星期三) 下午2:34 @.>; @.@.>; 主题: Re: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
We'd need to see the ADT log to see why this isn't working in your case. Are you able to provide this please:
either, add DebugOut=true to a file in c:\users\username.airsdk\adt.cfg, then run the ADT command again, and check the contents of c:\users\username\adt.log
or, open up the AIR SDK Manager, go to the Troubleshooting page, and then run the ADT command again
thanks
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>
Hi
So it may be worth checking: values that are in the adt.cfg file that's in c:\users\username.airsdk folder will be used in preference to values in the adt.cfg file in the AIR_SDK\lib folder.
But also, please note you need forward slashes (or double-backslashes) because this file is read in by Java...
AndroidPlatformSDK=D:/application/Android/Sdk
JAVA_HOME=D:/application/jdk-11.0.17-full
thanks
You're right, change to this,it succeed. Also, if I only want to support armv7 and armv8 instead of all. How should I set the parameters,some SDKs only provide support for armv7 and armv8. #JAVA_HOME=D:\application\jdk-11.0.17-full JAVA_HOME=D:/application/jdk-11.0.17-full
------------------ 原始邮件 ------------------ 发件人: "154689075" @.>; 发送时间: 2024年4月10日(星期三) 下午3:10 @.@.@.>; @.@.>; 主题: 回复: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
I have set it in the configuration file ..\lib\adt.cfg.
For convenience, rather than using "-platformsdk" on the command line, these can be set up here:
AndroidPlatformSDK=D:\application\Android\Sdk #iOSPlatformSDK=path_to_sdk
JAVA_HOME is usually picked up from an environment variable but this can override it:
JAVA_HOME=D:\application\jdk-11.0.17-full
------------------ 原始邮件 ------------------ 发件人: "yangjin1" @.>; 发送时间: 2024年4月10日(星期三) 下午2:53 @.@.>; @.@.***>; 主题: 回复: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
*** ADT Logging at 2024/04/10 14:51:39 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -package -tsa none -storetype pkcs12 -keystore D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\buildANE/key/air/cert.p12 -storepass xxxxxx -target ane Honor.ane extension.xml -swc Library.swc -platform Android-ARM -C Android-ARM/ . -platform Android-ARM64 -C Android-ARM64/ . *** ADT Logging at 2024/04/10 14:51:48 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -certificate -cn UnitedMindsetSelfSignedCertificate -ou Software Development -o UnitedMindset -c US 2048-RSA ${KEYSTORE} 111111 *** ADT Logging at 2024/04/10 14:51:50 *** Called by: D:\SDK\flex_4.13_air_33.1_x64_50.2.4.4\lib\adt.jar ADT 50.2.4.4 called with: -package -target apk-captive-runtime -arch all -storetype jks -keystore key/apk/yttx-android.keystore -storepass xxxxxx D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/release/yttx-andBD-0.0.1-20240410-145138.apk D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build/Main-apk-app.xml -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build/Main.swf -extdir D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/ane -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/ane_assets . -C D:\yttx\client\trunk\tools\ane_android\fb47_apk_feidou\fb47_apk_honor\AndroidHonorSample\ant_packer/../../AndroidHonorSample/build -platformsdk D:/application/Android/Sdk Not requested a legacy APK build, but could not find Javac and/or Android SDK hence falling back to legacy build UsageError: -arch must be followed by (armv7 | x86 | armv8 | x64)
------------------ 原始邮件 ------------------ 发件人: "airsdk/Adobe-Runtime-Support" @.>; 发送时间: 2024年4月10日(星期三) 下午2:34 @.>; @.@.>; 主题: Re: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
We'd need to see the ADT log to see why this isn't working in your case. Are you able to provide this please:
either, add DebugOut=true to a file in c:\users\username.airsdk\adt.cfg, then run the ADT command again, and check the contents of c:\users\username\adt.log
or, open up the AIR SDK Manager, go to the Troubleshooting page, and then run the ADT command again
thanks
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>
You should be able to restrict the list of architecture using the application descriptor file: https://airsdk.dev/docs/building/application-descriptor-files/elements/android#buildarchitectures
So e.g. within the <android>
section, add:
<buildArchitectures>armv7,armv8</buildArchitectures>
When used in combination with APK and 'all', or when used with an AAB format, this should limit the ABIs that are packaged up..
thanks.
------------------ 原始邮件 ------------------ 发件人: "airsdk/Adobe-Runtime-Support" @.>; 发送时间: 2024年4月10日(星期三) 下午4:03 @.>; @.@.>; 主题: Re: [airsdk/Adobe-Runtime-Support] package -arch all error (Issue #3150)
You should be able to restrict the list of architecture using the application descriptor file: https://airsdk.dev/docs/building/application-descriptor-files/elements/android#buildarchitectures
So e.g. within the <android> section, add:
<buildArchitectures>armv7,armv8</buildArchitectures>
When used in combination with APK and 'all', or when used with an AAB format, this should limit the ABIs that are packaged up..
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>