Problem description
After using Jake to import, setup and run an Alloy project in Appcelerator Studio, is not possible to run it on Genymotion emulators if not manually editing first tiapp.xml.
Steps to reproduce
1. Import the Harness project in Appcelerator Studio
2. Import any Alloy project using Jake.
ex.
jake app:setup dir=advanced/custom_tss_queries/
3. Run on Genymotion simulator the Harness project from Studio.
Result:
App fails to build and run
[ERROR] Application Installer abnormal process termination. Process exit value was 1
[WARN] : --avd-* options have been deprecated, please use --device-id
Available Emulators:
titanium_1_WVGA800 (4.1.2)
titanium_GalaxyNexus_4.0_API14 (4.0)
Google Galaxy Nexus - 4.3 - API 18 - 720x1280 (4.3)
Google Nexus 7 - 4.4.2 - API 19 - 800x1280 (4.4.2)
Google Nexus One - 2.3.7 - API 10 - 480x800 (2.3.7)
For help, run: titanium help build
[ERROR] : Missing required option: --device-id <name>
3. Open tiapp.xml and save. Run again.
Result: project build and run and expected.
Seems to be reproducible only when building/running on Genymotion. Android Emulator and Android device launch as expected.
Tim, I've fixed the bug description, the scenario I'm considering is when the Harness project is being imported in Studio, the sample then being imported using jake and run from Studio. Check the steps I've updated in the description.
ti sdk select
reports the list of the SDK installed and the prompt for choosing which SDK to use:I can also confirm I can successfully execute
jake app:run dir=advanced/custom_tss_queries platform=android
from CLI.This is a direct result of ALOY-956. The supplied tiapp.xml in the HarnessTemplate no longer has an
<sdk-version>
tag to enable us to run the jake tests with any SDK build by simply selecting it withti sdk select
. Without the sdk-version tag, Studio does not know which SDK version to use to build your app with and is apparently not choosing the version you have selected withti sdk select
. (You could open a Studio ticket for that if you want.) By opening & saving the tiapp.xml, Studio updates that file with your currently-selected SDK version. That step is required if you're going to build via Studio rather than with the jake scripts. Another option would be to use the new--testapp
argument for thealloy new
command. i.e. create a new Titanium (classic) project, then enter:alloy new path/to/project --testapp advanced/custom_tss_queries
which will "Alloy-ize" your project and copy the test app's files into your project.