{ "id": "108842", "key": "TIMOB-12487", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "14164", "description": "Release 3.0.2", "name": "Release 3.0.2", "archived": true, "released": true, "releaseDate": "2013-02-19" }, { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" }, { "id": "15093", "description": "2013 Sprint 03 Core", "name": "2013 Sprint 03 Core", "archived": true, "released": true, "releaseDate": "2013-02-11" }, { "id": "14813", "description": "2013 Sprint 03", "name": "2013 Sprint 03", "archived": true, "released": true, "releaseDate": "2013-02-11" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-02-20T08:16:03.000+0000", "created": "2013-01-30T01:47:29.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "core", "module_memory", "qe-testadded" ], "versions": [ { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "issuelinks": [], "assignee": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2013-02-20T08:16:03.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "Reproduction steps:\r\n\r\n1. Create a new titanium app\r\n2. Put the following entry inside your tiapp.xml\r\n{code}\r\ntrue\r\n{code}\r\n3. Create an apk for the app via the distribute command\r\n4. Push the app to the phone via 'adb push myApp /mnt/sdcard/'\r\n5. Use some file explorer on your phone like Astro (you may need to download this) and install the app\r\n6. After the app has been installed, click 'open'\r\n7. Push home\r\n8. Open the same app again from the app list\r\n9. Repeat 7-8 a few times\r\n10. When you have the app open, hit back\r\n\r\nExpected Result:\r\nThe app should back out without crashing\r\n\r\nActual Result:\r\nThe app crashes with the error message:\r\n{code}\r\nE/AndroidRuntime(19143): java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0\r\nE/AndroidRuntime(19143): \tat java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:251)\r\nE/AndroidRuntime(19143): \tat java.util.ArrayList.get(ArrayList.java:304)\r\nE/AndroidRuntime(19143): \tat org.appcelerator.titanium.TiApplication.terminateActivityStack(TiApplication.java:201)\r\nE/AndroidRuntime(19143): \tat org.appcelerator.titanium.TiRootActivity.finish(TiRootActivity.java:164)\r\nE/AndroidRuntime(19143): \tat org.appcelerator.titanium.TiApplication.terminateActivityStack(TiApplication.java:205)\r\nE/AndroidRuntime(19143): \tat org.appcelerator.titanium.TiRootActivity.finish(TiRootActivity.java:164)\r\nE/AndroidRuntime(19143): \tat android.support.v4.app.FragmentActivity.onBackPressed(FragmentActivity.java:167)\r\nE/AndroidRuntime(19143): \tat org.appcelerator.titanium.TiBaseActivity.onBackPressed(TiBaseActivity.java:609)\r\nE/AndroidRuntime(19143): \tat android.app.Activity.onKeyUp(Activity.java:2099)\r\nE/AndroidRuntime(19143): \tat android.view.KeyEvent.dispatch(KeyEvent.java:2575)\r\nE/AndroidRuntime(19143): \tat android.app.Activity.dispatchKeyEvent(Activity.java:2329)\r\nE/AndroidRuntime(19143): \tat org.appcelerator.titanium.TiBaseActivity.dispatchKeyEvent(TiBaseActivity.java:740)\r\nE/AndroidRuntime(19143): \tat com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1806)\r\nE/AndroidRuntime(19143): \tat android.view.ViewRootImpl.deliverKeyEventPostIme(ViewRootImpl.java:3327)\r\nE/AndroidRuntime(19143): \tat android.view.ViewRootImpl.handleFinishedEvent(ViewRootImpl.java:3300)\r\nE/AndroidRuntime(19143): \tat android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2460)\r\nE/AndroidRuntime(19143): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\nE/AndroidRuntime(19143): \tat android.os.Looper.loop(Looper.java:137)\r\nE/AndroidRuntime(19143): \tat android.app.ActivityThread.main(ActivityThread.java:4424)\r\nE/AndroidRuntime(19143): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\nE/AndroidRuntime(19143): \tat java.lang.reflect.Method.invoke(Method.java:511)\r\nE/AndroidRuntime(19143): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)\r\nE/AndroidRuntime(19143): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)\r\nE/AndroidRuntime(19143): \tat dalvik.system.NativeStart.main(Native Method)\r\n{code}\r\n\r\nNOTE: This seems to happen consistently on 4.0.4 devices. This behavior varies on other versions.", "attachment": [], "flagged": false, "summary": "Android: IndexOutOfBoundsException when backing out of an app after install from app store", "creator": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [ { "id": "108978", "key": "TIMOB-12535", "fields": { "summary": "Backport to 3_0_X: TIMOB-12847", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "5", "description": "The sub-task of the issue", "name": "Sub-task", "subtask": true } } } ], "reporter": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Galaxy Nexus 4.0.4", "comment": { "comments": [ { "id": "236654", "author": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "body": "https://github.com/appcelerator/titanium_mobile/pull/3827", "updateAuthor": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-01-30T21:33:50.000+0000", "updated": "2013-01-30T21:33:50.000+0000" }, { "id": "237018", "author": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "body": "App is not crashing now on repeatedly opening it from home page.\r\nEnvironment used for verification -\r\nTitanium SDK: 3.0.2.v20130201161712\r\nTitanium  Studio:3.0.2.201301251115\r\nDevice: Samsung GALAXY Note (2.3.6)\r\n", "updateAuthor": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-02-04T07:26:08.000+0000", "updated": "2013-02-04T07:26:08.000+0000" }, { "id": "238998", "author": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Re-opening to edit label", "updateAuthor": { "name": "sbhadauria", "key": "sbhadauria", "displayName": "Shyam Bhadauria", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-02-20T08:13:00.000+0000", "updated": "2013-02-20T08:13:00.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }