Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-17813] Android: App fails to install for any Android version other than 5.0 with 3.4.1.v20141001062512

GitHub Issuen/a
TypeBug
PriorityHigh
StatusClosed
ResolutionFixed
Resolution Date2014-11-12T18:15:23.000+0000
Affected Version/sRelease 3.4.1, Release 3.4.2
Fix Version/sRelease 3.4.1, Release 3.4.2, Release 3.5.0, Release 4.0.0
ComponentsAndroid, CLI
Labelsmodule_android_tooling_smoke, qe-3.4.1, qe-manualtest, qe-testadded
ReporterLokesh Choudhary
AssigneeChris Barber
Created2014-10-01T18:22:03.000+0000
Updated2014-11-21T18:51:19.000+0000

Description

Our CLI automation tests caught this issue. Pretty neat.

Its confusing if its a regression as we never had android L support in 3.4.0.GA so can't call this technically a regression.

Description:

1. Install SDK 3.4.1.v20141001062512. 2. Create a default app in studio. 3. Build for android emulator or device using studio/CLI.

Actual Result:

1. The app fails to install and gives error: On device:
[ERROR] :  Failed to install apk on "02a31fff08e473f1"
[ERROR] Application Installer abnormal process termination. Process exit value was 1
[ERROR] Application Installer abnormal process termination. Process exit value was 1
On emulator:
[ERROR] :  Error: INSTALL_FAILED_OLDER_SDK
[ERROR] Application Installer abnormal process termination. Process exit value was 1
2. On looking at the android manifest in the build folder we see:
<uses-sdk android:minSdkVersion="10" android:targetSdkVersion="L"/>
which means when the target sdk version is L it fails. 3. I tried by adding
<android xmlns:android="http://schemas.android.com/apk/res/android">
    <manifest>
        <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19"/>
    </manifest>
</android>
to the tiapp.xml & the app installed without any issues. 4. Installing the app on android L preview device/emulator works fine out of the box.

Expected Result:

1. The app should install on the device/emulator successfully.

Comments

  1. Chris Barber 2014-10-08

    Master: https://github.com/appcelerator/titanium_mobile/pull/6206 To test: 1) install Android L SDK 2) create an Android emulator that is older than Android L such as 4.4.2 3) create an app 4) do NOT set a "tool-api-level" or in the tiapp.xml or custom AndroidManifest.xml 5) build for Android and select your old emulator 6) the generated build/android/AndroidManifest.xml should have a targetSDK of "20" and not "L"
  2. Chris Barber 2014-10-15

    3_4_X backport: https://github.com/appcelerator/titanium_mobile/pull/6225
  3. Chris Barber 2014-10-28

    3_4_1: https://github.com/appcelerator/titanium_mobile/pull/6278
  4. Lokesh Choudhary 2014-10-28

    Verified the fix. We can install app on android version's other than android 5.0 too. Closing. Environment: Appc Studio : 3.4.1.201410191611 Ti SDK : 3.4.1.v20141028135549, 3.4.2.v20141028134735, 3.5.0.v20141028132516 Mac OSX : 10.9.4 Alloy : 1.5.1 CLI - 3.4.1-dev Code Processor: 1.1.1 Sony Xperia : android 2.3.7 Samsung Galaxy S4 : android 4.4.2
  5. Lokesh Choudhary 2014-10-28

    Editing comment
  6. Lokesh Choudhary 2014-11-12

    adding affects version label

JSON Source