Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-15678] Android: CLI needs better output for emulator

GitHub Issuen/a
TypeBug
PriorityCritical
StatusClosed
ResolutionFixed
Resolution Date2013-11-14T01:33:00.000+0000
Affected Version/sRelease 3.2.0
Fix Version/s2013 Sprint 23, 2013 Sprint 23 Core, Release 3.2.0
ComponentsCLI
Labelsqe-closed-3.2.0
ReporterTony Lukasavage
AssigneeChris Barber
Created2013-11-06T22:08:42.000+0000
Updated2013-11-19T02:14:14.000+0000

Description

problem

As it stands now, the only output from the Android emulator launching process is the name of the emulator it intends to launch. There's no indication as to how it reached the decision to use a particular AVD. There's no output, positive or negative from the launching of the emulator. This means if there is an error in launching the emulator, the developer will have no idea why. This is further compounded by the fact that because the emulator process never gets started that "adb logcat" will provide no information either.

expected

The Android emulator output from the CLI should be like any other output, particularly on failures. It should contain full and complete log information that can be throttled using the CLI's log level options.

Comments

  1. Chris Barber 2013-11-07

    Pull request: https://github.com/appcelerator/titanium_mobile/pull/4930 To test, you need to cause your emulator to fail to load. How? Great question! I have no idea. I modified the code to run a non-existent emulator (line 234 of node_modules/titanium-sdk/lib/emulators/avd.js).
  2. Olga Romero 2013-11-19

    @Tony, please reopen, if not satisfied. Mac osx 10.9 Mavericks Appcelerator Studio, build: 3.2.0.201311161724 Titanium SDK, build: 3.2.0.v20131117001643 CLI 3.2.0-alpha Alloy 1.3.0 (git://github.com/appcelerator/alloy.git#1_3_X) Working case:
       [INFO] :   Deploy type: development
       [INFO] :   Building for target: emulator
       [INFO] :   Building for emulator: API15_Android_4.0.3
       [INFO] :   Targeting Android SDK: 19
       [INFO] :   Building for the following architectures: armeabi, armeabi-v7a, x86
       [INFO] :   Signing with keystore: /Users/oromero/Library/Application Support/Titanium/mobilesdk/osx/3.2.0.v20131117001643/android/dev_keystore (tidev)
       [DEBUG] :  App ID: com.appc.samuel
       [DEBUG] :  Classname: Samuel
       [INFO] :   Debugging disabled
       [INFO] :   Profiler disabled
       [INFO] :   Launching emulator: API15_Android_4.0.3
       [INFO] :   Emulator already running
       
    App failed to launch
       [INFO] :   Making sure the adb server is running
       [INFO] :   Waiting for emulator to become ready
       [LiveView] version 0.1.34
       [LiveView] File Server Started on Port 8324
       [LiveView] Event Server Started on Port 8323
       [INFO] :   Emulator ready!
       [INFO] :   Removing deploy.json from sdcard
       [INFO] :   Installing apk: /Users/oromero/Documents/Appcelerator_Studio_Workspace1/samuel/build/android/bin/samuel.apk
       [INFO] :   App successfully installed
       [INFO] :   Starting app: com.appc.samuel/.SamuelActivity
       -- End application log -------------------------------------------------------
       The current timeout is set to 120000 ms
       [ERROR] :  Application failed to launch
       You can increase this timeout by running: titanium config android.emulatorStartTimeout <timeout ms>
       
       

JSON Source