{ "id": "113440", "key": "TIMOB-13688", "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": "15419", "description": "2013 Sprint 09 Core", "name": "2013 Sprint 09 Core", "archived": true, "released": true, "releaseDate": "2013-05-06" }, { "id": "15107", "description": "2013 Sprint 09", "name": "2013 Sprint 09", "archived": true, "released": true, "releaseDate": "2013-05-06" }, { "id": "15478", "description": "Release 3.1.1", "name": "Release 3.1.1", "archived": true, "released": true, "releaseDate": "2013-06-17" }, { "id": "14982", "description": "Release 3.2.0", "name": "Release 3.2.0", "archived": false, "released": true, "releaseDate": "2013-12-19" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-04-30T16:58:58.000+0000", "created": "2013-04-26T17:44:49.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" } ], "issuelinks": [], "assignee": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2013-11-20T22:33:58.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": "App crashes when we're loading images only on Honeycomb. Works on Android 2.3.3 and 4.0.\r\n\r\nChecked the android docs with Matt and found getByteCount was introduced in api level 12.\r\n\r\nThis link seems to indicated that we're checking on >= when it should be > since the API_LEVEL_HONEYCOMB is defined as 11.\r\n\r\nhttps://github.com/appcelerator/titanium_mobile/blob/master/android/titanium/src/java/org/appcelerator/titanium/util/TiImageLruCache.java\r\n\r\n\r\n\r\nStack Trace:\r\n\r\n\r\ntStatusBar( 188): lights on\r\nI/ActivityManager( 131): Starting: Intent { cmp=com.playdom.mobile.gardensoftime/org.appcelerator.titanium.TiActivity (has extras) } from pid 556\r\nW/InputManagerService( 131): Starting input on non-focused client com.android.internal.view.IInputMethodClient$Stub$Proxy@40ac4738 (uid=10024 pid=257)\r\nI/WindowManager( 131): Setting rotation to 2, animFlags=0\r\nD/Tablet/NotificationPanel( 188): notificationCount=1\r\nD/Vold ( 81): USB connected\r\nE/AndroidRuntime( 556): FATAL EXCEPTION: main\r\nE/AndroidRuntime( 556): java.lang.NoSuchMethodError: android.graphics.Bitmap.getByteCount\r\nE/AndroidRuntime( 556): at org.appcelerator.titanium.util.TiImageLruCache.sizeOf(TiImageLruCache.java:45)\r\nE/AndroidRuntime( 556): at org.appcelerator.titanium.util.TiImageLruCache.sizeOf(TiImageLruCache.java:14)\r\nE/AndroidRuntime( 556): at android.support.v4.util.LruCache.safeSizeOf(LruCache.java:230)\r\nE/AndroidRuntime( 556): at android.support.v4.util.LruCache.put(LruCache.java:123)\r\nE/AndroidRuntime( 556): at ti.modules.titanium.ui.widget.TiUIImageView$2.loadImageFinished(TiUIImageView.java:134)\r\nE/AndroidRuntime( 556): at org.appcelerator.titanium.util.TiLoadImageManager.handleLoadImageMessage(TiLoadImageManager.java:90)\r\nE/AndroidRuntime( 556): at org.appcelerator.titanium.util.TiLoadImageManager.handleMessage(TiLoadImageManager.java:107)\r\nE/AndroidRuntime( 556): at android.os.Handler.dispatchMessage(Handler.java:95)\r\nE/AndroidRuntime( 556): at android.os.Looper.loop(Looper.java:126)\r\nE/AndroidRuntime( 556): at android.app.ActivityThread.main(ActivityThread.java:3997)\r\nE/AndroidRuntime( 556): at java.lang.reflect.Method.invokeNative(Native Method)\r\nE/AndroidRuntime( 556): at java.lang.reflect.Method.invoke(Method.java:491)\r\nE/AndroidRuntime( 556): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)\r\nE/AndroidRuntime( 556): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)\r\nE/AndroidRuntime( 556): at dalvik.system.NativeStart.main(Native Method)\r\nW/ActivityManager( 131): Force finishing activity com.playdom.mobile.gardensoftime/org.appcelerator.titanium.TiActivity\r\nW/ActivityManager( 131): Activity pause timeout for ActivityRecord{40da9fb8 com.playdom.mobile.gardensoftime/org.appcelerator.titanium.TiActivity}\r\nD/Vold ( 81): USB disconnected\r\nD/Tablet/NotificationPanel( 188): notificationCount=0\r\nD/Tablet/NotificationPanel( 188): notificationCount=1\r\nD/Vold ( 81): USB connected\r\nW/ActivityManager( 131): Launch timeout has expired, giving up wake lock!\r\nW/ActivityManager( 131): Activity idle timeout for ActivityRecord{40ce8360 com.playdom.mobile.gardensoftime/.GardensActivity}\r\nW/ActivityManager( 131): Activity destroy timeout for ActivityRecord{40da9fb8 com.playdom.mobile.gardensoftime/org.appcelerator.titanium.TiActivity}\r\nI/WindowManager( 131): WIN DEATH: Window{40daab20 com.playdom.mobile.gardensoftime/com.playdom.mobile.gardensoftime.GardensActivity paused=false}\r\nI/ActivityManager( 131): Process com.playdom.mobile.gardensoftime (pid 556) has died.", "attachment": [], "flagged": false, "summary": "Android: android.graphics.Bitmap.getByteCount Crash on HoneyComb (TiImageLruCache.sizeOf)", "creator": { "name": "blonsdorf", "key": "blonsdorf", "displayName": "Brian Lonsdorf", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "blonsdorf", "key": "blonsdorf", "displayName": "Brian Lonsdorf", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Android 3.0", "comment": { "comments": [ { "id": "249249", "author": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "body": "PR: https://github.com/appcelerator/titanium_mobile/pull/4217", "updateAuthor": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-04-26T23:46:30.000+0000", "updated": "2013-04-26T23:46:30.000+0000" }, { "id": "252587", "author": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Backport PR for 3_1_X: https://github.com/appcelerator/titanium_mobile/pull/4289", "updateAuthor": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-05-17T17:38:58.000+0000", "updated": "2013-05-17T17:38:58.000+0000" }, { "id": "252611", "author": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Test steps:\nPlease check the [android doc|http://developer.android.com/reference/android/graphics/Bitmap.html#getByteCount()]. The getByteCount() function is for API 12+. The fix makes our code match the doc.", "updateAuthor": { "name": "pwang", "key": "pwang", "displayName": "Ping Wang", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-05-17T18:27:13.000+0000", "updated": "2013-05-17T18:27:13.000+0000" }, { "id": "255000", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@Ping. Not sure if there is enough info there to do anything with.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-05-30T22:45:31.000+0000", "updated": "2013-05-30T22:45:31.000+0000" }, { "id": "255010", "author": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Eric, there is no coded \"test case\" for this bug. The fix was making our implementation consistent with the Google's documentation of the method, which fixed a bug for Lanica's \"Gardens of Time\" app.", "updateAuthor": { "name": "mlangston", "key": "mlangston", "displayName": "Matt Langston", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-05-30T23:07:42.000+0000", "updated": "2013-05-30T23:07:42.000+0000" }, { "id": "255058", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "@Matt, understood. Although I can verify the code change, I do not have a test case for this.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-05-31T00:36:53.000+0000", "updated": "2013-05-31T00:36:53.000+0000" }, { "id": "280413", "author": { "name": "lokeshchdhry", "key": "lokeshchdhry", "displayName": "Lokesh Choudhary", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Verified the code change as described in the ticket as there is no coded test to verify.\r\nClosing.\r\n\r\nEnvironment:\r\nAppcel Studio : 3.2.0.201311200357\r\nTi SDK : 3.2.0.v20131119142443\r\nMac OSX : 10.8.5\r\nAlloy : 1.3.0\r\nCLI - 3.2.0-alpha\r\nDevice: Samsung Galaxy S4 running android 4.2.2", "updateAuthor": { "name": "lokeshchdhry", "key": "lokeshchdhry", "displayName": "Lokesh Choudhary", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-11-20T22:33:58.000+0000", "updated": "2013-11-20T22:33:58.000+0000" } ], "maxResults": 7, "total": 7, "startAt": 0 } } }