Copy link to clipboard
Copied
Hello,
I tried to export an existing Android-ARM to Android-x86:
This application uses to 2 ANE for In-App purchases. One for iOS and another one for Android. I repackaged the Android ANE file to be compatible with Android-x86 and I also add the new Flash Builder "-arch" with value "x86" and place it before "-storetype".
Error occurred while packaging the application:
output file is not writable
usage:
adt -checkstore SIGNING_OPTIONS
adt -certificate -cn <name> ( -ou <org-unit> )? ( -o <org-name> )? ( -c <country> )? ( -validityPeriod <years> )? ( 1024-RSA | 2048-RSA ) <pfx-file> <password>
adt -help
adt -migrate SIGNING_OPTIONS ( <air-file-in> | <airn-file-in> ) <output-file>
adt -package SIGNING_OPTIONS ( -target air )? <output-package> ( <app-desc> FILE_OPTIONS | <input-package> )
adt -package SIGNING_OPTIONS -target airn <output-package> ( <app-desc> FILE-AND-PATH-OPTIONS | <input-package> )
adt -package -target ( apk | apk-debug | apk-emulator | apk-captive-runtime ) ( CONNECT_OPTIONS? | LISTEN_OPTIONS? ) ( -airDownloadURL <url> )? ( ARCH_OPTIONS )? SIGNING_OPTIONS <output-package> ( <app-desc> PLATFORM-SDK-OPTION? FILE-AND-PATH-OPTIONS | <input-package> PLATFORM-SDK-OPTION? )
adt -package -target ( ipa-test | ipa-debug | ipa-app-store | ipa-ad-hoc | ipa-test-interpreter | ipa-debug-interpreter | ipa-test-interpreter-simulator | ipa-debug-interpreter-simulator ) ( CONNECT_OPTIONS? | LISTEN_OPTIONS? ) ( -sampler )? ANE_LINK_OPTIONS? AOT_MODE_OPTIONS? SIGNING_OPTIONS <output-package> ( <app-desc> PLATFORM-SDK-OPTION? FILE-AND-PATH-OPTIONS | <input-package> PLATFORM-SDK-OPTION? )
adt -package SIGNING_OPTIONS? -target native SIGNING_OPTIONS? <output-package> ( <app-desc> FILE-AND-PATH-OPTIONS | <input-package> )
adt -package SIGNING_OPTIONS? -migrate SIGNING_OPTIONS -target native SIGNING_OPTIONS? <output-package> <app-desc> FILE_OPTIONS PATH-OPTION
adt -package SIGNING_OPTIONS? -target bundle SIGNING_OPTIONS? <output-package> ( <app-desc> FILE-AND-PATH-OPTIONS | <input-package> )
adt -package SIGNING_OPTIONS? -target ane <output-package> <ext-desc> ANE_OPTIONS
adt -prepare <airi-file> <app-desc> FILE_AND_PATH_OPTIONS
adt -sign SIGNING_OPTIONS ( -target ( air | airn | ane ) )? ( <airi-file> | <unsigned-ane-file> ) <output-file>
adt -devices PLATFORM-OPTION PLATFORM-SDK-OPTION?
adt -installRuntime PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION? ( -package <apk-file> )?
adt -installApp PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION? -package <apk-file | ipa-file>
adt -uninstallRuntime PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION?
adt -uninstallApp PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION? -appid <app-id>
adt -launchApp { PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION? ( -debuggerPort port )? -appid <app-id> }
adt -runtimeVersion PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION?
adt -appVersion PLATFORM-OPTION PLATFORM-SDK-OPTION? DEVICE-OPTION? -appid <app-id>
adt -version
SIGNING_OPTIONS : -storetype <type> ( -keystore <store> )? ( -storepass <pass> )? ( -alias <aliasName> )? ( -keypass <pass> )? ( -providerName <name> )? ( -tsa <url> )? ( -provisioning-profile <profile> )?
FILE_OPTIONS : <fileOrDir>* ( ( -C <dir> <fileOrDir>+ ) | ( -e <file> <path> ) )*
ARCH_OPTIONS : -arch (armv7 | x86)
CONNECT_OPTIONS : -connect <host>
LISTEN_OPTIONS : -listen <port>
ANE_LINK_OPTIONS : -hideAneLibSymbols ( yes | no )
ANE_OPTIONS : -swc <swc> ( -platform <name> (-platformoptions <file>)? <fileOrDir>* ( -C <dir> <fileOrDir>+ )* )*
FILE-AND-PATH-OPTIONS: ( PATH-OPTION | FILE-OPTIONS ) FILE-AND-PATH-OPTIONS?
PATH-OPTION : -extdir <dir>
PLATFORM-OPTION : -platform (android | ios)
PLATFORM-SDK-OPTION : -platformsdk <platform-sdk-home-dir>
DEVICE-OPTION : -device ( deviceID | ios-simulator )
AOT_MODE_OPTIONS : -useLegacyAOT ( yes | no )
Hi,
I am able to repro the bug if I edit the "APPLICATION" parameter while packaging the apk and change it to "somedirectory/helloworld.apk" from "helloworld.apk". So a quick workaround would be to remove whole directory path and simple make APPLICATION parameter value "helloworld.apk" when packaging with -arch argument.
Also there is a known issue with FB4.7 that it fails to install APK on Android device when packaged with -arch option on exporting release build. So always choose option "Keep bin
...Copy link to clipboard
Copied
I saw a few ADT errors in the last day or two, and I spotted something important in them, which has helped me a lot in tracking down the real issue.
You just posted all the things that ADT can do, but maybe didn’t notice that one important line:
"output file is not writable”
So, it doesn’t matter what the long list of other things that you might have got wrong is, it appears that for some reason the output file couldn’t be written. Check to see where the file is being written to, and if that folder has write permissions.
Copy link to clipboard
Copied
Hello Colin,
Yes, I notice that line too.
The build location is the desktop and if I simply remove the "-arch x86" to build to the ARM architecture then the errors goes away.
Maybe it's related with a new tempo file required with the x86 compilation!
Copy link to clipboard
Copied
I tried again with a new project (Simple hello world) and without any ANE and I got the same error !
Any one is using FB 4.7 + AIR 14 + Android x86 (I doubt) !?
I also tried in both AIR 14.0 and the new beta and also in Mac and Windows environment !
I'm completely out of ideas and IT seems that this was not well tested with FB on my opinion.
Copy link to clipboard
Copied
Hi hferraeira,
Issue is not reproducible at our end both on Mac and Windows, I tried putting up SDK on desktop and then tried again but couldn't reproduce.
Can you please tell the beta version of AIR build and OS version of your machine? Also can you please try "-arch" option with "armv7" value and check if error still occurs? Please confirm if things are working fine on command prompt/ terminal of your machine by trying following packaging command:
adt -package -target apk -arch x86 -storetype pkcs12 -keystore xxx helloworld.apk helloworld-app.xml helloworld.swf
-Nimisha
Copy link to clipboard
Copied
Hi Nimisha1,
I tried with both AIR 14.0 final release and also 14.0.125.
I have a Mac (last version OS).
With -arch armv7 I got the same error !
With command line works !
See the screenshoot of FB 4.7 customize launch:
See the screenshoot of FB export error:
Copy link to clipboard
Copied
Hi,
I am able to repro the bug if I edit the "APPLICATION" parameter while packaging the apk and change it to "somedirectory/helloworld.apk" from "helloworld.apk". So a quick workaround would be to remove whole directory path and simple make APPLICATION parameter value "helloworld.apk" when packaging with -arch argument.
Also there is a known issue with FB4.7 that it fails to install APK on Android device when packaged with -arch option on exporting release build. So always choose option "Keep bin-release-temp folder" which will keep APK even if FB fails to install/launch it on the device.
-Nimisha
Copy link to clipboard
Copied
Hi Nimisha1,
Bingo, it's a bug with the default parameter APPLICATION in conjunction with a custom parameter.
Change the value of APPLICATION parameter to something else like /Volumes/Data/HelloWorld.apk fix the problem.
Thank you very much.
Copy link to clipboard
Copied
Is there any plan to update Flash Builder with this bugfix? I notice this thread is 9 months old, and Flash Builder still has the bug. Thanks for the workaround, btw, it saved my butt!
Copy link to clipboard
Copied
I was having an issue to where Flash Builder was saying that line 129 of my android app xml had an invalid value in it. Even though my issue is not exactly related to the -arch x86 issue posted in this thread, I hope that what I found might help someone else out when they try to customize where Flash Builder is outputting the .apk file. In the debug configurations I use the modified parameters so that I can export my .ipa files and .apk files to a folder that is mapped to my dropbox folder online. My workspace that contains my Flash Builder projects and bin-debug/bin-release folders is on my D: drive, but my folder that is mapped to my online server is on the C: drive. For all my iOS apps, the APPLICATION modified parameter works perfectly putting in my path to the C: drive. But I was having grief when exporting my .apk, and found that if I change my backslashes to forward slashes than I can now successfully export my .apk as expected. I am sorry, however, if my workaround does not help with the -arch x86 issue, but it is worth giving a try.
--FAIL--
Modified Parameters
APPLICATION
C:\Users\Jeff\Dropbox\JeffApps\BlueAdminAndroid.apk
--SUCCESS--
Modified Parameters
APPLICATION
C:/Users/Jeff/Dropbox/JeffApps/BlueAdminAndroid.apk
Copy link to clipboard
Copied
What worked for me with FB on Mac, when using the Harman AIR33.1 SDK to compile an Android app with -arch armv8 was to enter the full directory path and filename.apk
Copy link to clipboard
Copied
Thank you! This was the last missing piece I needed, and now I finally was able to meet the 64-bit requirement.