Migrate certification with native extension - actionscript-3

I have problem with migrate two certificate .p12, because I can't generate .air file, because I have native extension in my project and flash builder not supported to make .air file with native extension.
I tried with next command:
C:\Program Files (x86)\Apache Flex\SDK 4.12.1 AIR 19\bin\adt.bat" -package -storetype pkcs12 -keystore new.p12-migrate -storetype pkcs12 -keystore old.p12 -target native example.exe example-app.xml example.swf
And I got message:
Migration certificate can only be applied to desktop native installers
with native extension
I haven't idea how can I do that, can you please help me ?
Thanks.

Related

How to develop Flutter web app on Windows Subsystems for Linux (Debian 10)

I would like to develop Flutter web app on Windows Subsystems for Linux (Debian 10). I followed this instruction. https://flutter.dev/docs/get-started/codelab-web
flutter channel beta
flutter upgrade
flutter config --enable-web
First, I input these commands in my terminal and all of them worked fine.
Second, I tried flutter doctor command and this is the result.
Downloading android-arm-release/linux-x64 tools... 2.1s
Downloading android-arm64-profile/linux-x64 tools... 1.8s
Downloading android-arm64-release/linux-x64 tools... 1.6s
Downloading android-x64-profile/linux-x64 tools... 1.6s
Downloading android-x64-release/linux-x64 tools... 1.5s
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, 1.18.0-11.1.pre, on Linux, locale en_US.UTF-8)
[✗] Android toolchain - develop for Android devices
✗ Unable to locate Android SDK.
Install Android Studio from: https://developer.android.com/studio/index.html
On first launch it will assist you in installing the Android SDK components.
(or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
If the Android SDK has been installed to a custom location, set ANDROID_SDK_ROOT to that location.
You may also want to add it to your PATH environment variable.
[✗] Chrome - develop for the web (Cannot find Chrome executable at google-chrome)
! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.
[!] Android Studio (not installed)
[✓] Connected device (1 available)
! Doctor found issues in 3 categories.
I develop web app, so I don't need Android toolchain and Android Studio, but I need Chrome.
I think there are two ways.
install Chrome on WSL => I searched the Internet, but I couldn't find the way to do so.
user Chrome on Windows 10(not WSL) => I searched the Internet (for example:flutter chrome "windows subsystems for linux"), but I couldn't find the way to do so.
Could you give me any advice?
Try setting the environment variable CHROME_EXECUTABLE to the path of the Chrome executable installed on Windows, so Flutter can locate it.
Turns out, you just need to tell flutter where chrome.exe is located on your host windows machine!
One way to do this is to use GUI Apps, which unfortunately requires WSL version 2 and Windows 11. Read More
Making WSL and GUI Apps ready
If you don't already have wsl, run Powershell in Admin mode and run
wsl --install -d Ubuntu
sudo apt update
change the distro as you like
If you have, run these to make sure it's ready
wsl --set-default-version 2
wsl --update
wsl --shutdown
sudo apt update
Installing Google Chrome on WSL
Change directories into the temp folder: cd /tmp
Use wget to download it: sudo wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
Get the current stable version: sudo dpkg -i google-chrome-stable_current_amd64.deb
Fix the package: sudo apt install --fix-broken -y
Configure the package: sudo dpkg -i google-chrome-stable_current_amd64.deb
To launch, enter: google-chrome
You should be good to go
Running flutter doctor should mark web development as ready, and projects should run with this command:
flutter run -d chrome --web-renderer canvaskit
My WSL2(Windows 10 build 18363) did not recognise the environment variable CHROME_EXECUTABLE.
So, I also added the environment variable WSLENV to 'CHROME_EXECUTABLE/p'.
(https://adamtheautomator.com/windows-subsystem-for-linux/#Sharing_Environment_Variables)
Then, it works!

How can I build an Actionscript3.0 mobile project with air sdk command lines?

I got an Actionscript3.0 mobile project in Flash Builder and I want to build it into an swf file with air sdk 4.0 command lines. Any help?
update
I have got an answer to the question.(Reference given by jauboux)
dump a config file using compiler argument -dump-config=C:\a.xml.
mxmlc project with the config file, generating an swf file.
mxmlc Entry.as -load-config C:\a.xml
adt swf to ipa.
adt -package -target ipa-ad-hoc -provision-file a.mobileprovision
-storetype pkcs12 -keystore a.p12 -storepass passwordhere
a.ipa a-app.xml a.swf
embedpath1 embedpath2
-extdir ane
PS Thank VC.One for pointing out the problem of my question.
Here is the Hello World example from Adobe for Android and iOS giving you all the necessary steps

Package Adobe Air to Exe

Using Flash Builder 4.6, I exported an Adobe Air file from my mobile project.
I'm trying to get it packaged into an EXE (that would include the Adobe Air Runtime)
The project was compiled with Air 3.1. I looked online and there are some ADT commands that people recommend using but the problem is that the command throws errors in Air 3.1
If i use air 3.0 ADT:
AIR file at [app path]/app.air could not be converted.
The error was ""
If I use air 3.1 or air 3.2 sdk
SDK is missing file [my path to air]\lib\nai\bin\naip.exe
I'm running
java -jar [path to air]\lib\adt.jar" -package -target native app.dmg app.air
I've also tried
java -jar [path to air]\lib\adt.jar" -package -target native app.exe app.air
I've also looked into projects like this one: http://bishoponvsto.wordpress.com/2010/02/23/adobe-air-2beta-2-to-exe-packaging-air-app-in-windows-executable/ , but it is for Air 2.0.
Any ideas? Apparently there is an integrated Flash Builder 4.6 tool, but for some reason the option under export release doesn't exist for mobile projects - strange...
Why do you want to do this? Air files -- when exported for a specific platform -- are executables.
If you are looking for an "installer" that will create directories, run the Air installation, and move auxiliary files to specific locations (docs, icons, etc.), then try Inno Setup.
EDIT:
The code you provided works for me to create a Windows EXE. But it seems a bit unecessary . . . why not just export the EXE file from Flash Builder ("Export Release Build" button in the top toolbar)? If you can't or won't, then here are some suggestions:
I am using Java version 1.6.0_29. Make sure your Java is not only up to date, but that you are actually calling the correct version (java -version).
Check the JAR directory text carefully .
Check that you are actually calling to the right Air version.
Make sure that the quotation marks are on both sides of the JAR path.
You should be able to do a "Export Release Build" (though I am using FB 4.5). Instead of selecting "Export as: Signed packages for each target platform", select "Export as: Signed AIR packages for installation on the desktop". (You may have to create a certificate, but you can create one through this export feature, too.)
(If you happen to be able to use the Flash IDE, the exported Air file has to support both "Desktop" and "Extended Desktop".)
Hopefully, this will allow you to both produce an Air program that can be converted to EXE, and actually convert it using the command line.
I know this question is a little old, but a co-worker just ran into the same error message using the command line tools and FlashDevelop. It turns out that he was accidentally packaging some source files into the .air package, an extra copy of the app descriptor and one of the swc's was getting packaged in the .air file. I removed those and repackaged the .air file, then used this command:
adt.bat -package -target bundle kiosk kiosk.air
This successfully created a captive runtime exe. Of course there's no need to create a .air file first, you can package right to native or captive runtime, but since my co-worker was creating .air files I did it that way too just to be sure it would work.

Adobe AIR - .air to .exe/.dmg/.rpm

I need to get a native installer for Mac and Linux from an .air file. I'm on Windows and using AIR 2.5 .
I came across this interesting Windows application to convert an .air file to .exe/.dmg/.rpm.
I can not get it to work so did somebody else used it and can proof the functionality or can recommend a similiar app?
Thanks.
Uli
Here is an article from adobe to accomplish what you're trying to do here:
http://help.adobe.com/en_US/air/build/WS789ea67d3e73a8b22388411123785d839c-8000.html
I'm not sure if there are other applications that automate this process for you. There were a couple back when this functionality was first in beta but I think they're pretty much gone or incompatible. See here for a tutorial:
http://bishoponvsto.wordpress.com/2010/02/23/adobe-air-2beta-2-to-exe-packaging-air-app-in-windows-executable/
From the Air docs: "You must use ADT on the same operating system as that of the native installer file you want to generate."
I develop on a Mac and run Windows via bootcamp and with this setup I've been able to create native installers for both operating systems. Also it's worth noting that Adobe has abandoned support for Linux as for v2.6 so this may influence to what amount of trouble you're willing to go through to build an .rpm
you should use adt command.
adt -package -target native myApp.dmg myApp.air for MAC
and
adt -package -target native myApp.exe myApp.air fr Windows
Why not take a look at this article on NativeProcess functionality, it describes the process of creating a native installer. To quote some relevant portions:
To package the application, invoke the ADT application using syntax to package a native installer application version.
You must run ADT on the same operating system as the target installer application. To generate a DMG file, run ADT on Mac OS. To generate an EXE installer file, run ADT on Windows.
For example, the following command packages a DMG file on Mac OS:
adt -package -storetype pkcs12 -keystore myCert.p12 -target native NativeProcessTest.dmg NativeProcessTest-app.xml NativeProcessTest.swf NativeApps/Mac/bin/echoTestMac icons
Before running this command, open the Terminal application and navigate to the output directory for your Flex project. Adjust the following:
The path to the ADT application in the Flex SDK
The name and path of the signing certificate (given as myCert.p12 in this example)
For example, the following command packages an EXE installer file on Windows:
adt -package -storetype pkcs12 -keystore myCert.p12 -target native NativeProcessTest.exe NativeProcessTest-app.xml NativeProcessTest.swf NativeApps/Windows/bin/echoTestWindows icons
Before running this command, open a command line session and navigate to the output directory for your Flex project. Adjust the following:
The path to the ADT application in the Flex SDK
The name and path of the signing certificate (given as myCert.p12 in this example)
For more information on using ADT and on using signing certificates, refer to "Packaging an AIR application in a native installer" in Building Adobe AIR applications.
Captive Runtime will do something similar, but requires AIR 3 or later.

How to create a native installer in AIR. i.e Installer should be .exe, .deb, .dmg instead of .air

I want to create a native installer for windows, mac and linux machines, Instead of .air file I want to create .exe , .dmg and .deb files respectively.
So that i can enable the application to be installed natively.
adt -package -target native target.exe source.air
adt comes from AIR SDK. For windows, you also need to have java 1.5 or higher on path for adt to work (not installed by default).
Edit: Instruction above are for windows. Also, on each platform it is possible to make native installer for this platform only - no cross-packaging exist for now.