{ "id": "155045", "key": "TIMOB-20434", "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": "16997", "name": "Release 5.2.0", "archived": false, "released": true, "releaseDate": "2016-02-23" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2016-02-20T06:12:50.000+0000", "created": "2016-02-20T00:56:34.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [ "qe-5.2.0" ], "versions": [ { "id": "16997", "name": "Release 5.2.0", "archived": false, "released": true, "releaseDate": "2016-02-23" } ], "issuelinks": [ { "id": "50665", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "155047", "key": "TIMOB-20435", "fields": { "summary": "NullPointerException is thrown in logcat if you use the latest SDK with latest Facebook module", "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": "None", "id": "6" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "50664", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "151485", "key": "TIMOB-19577", "fields": { "summary": "Android: Update Facebook Module to support Facebook SDK 4.7.0", "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": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false } } } } ], "assignee": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "updated": "2016-02-22T01:58:18.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": "*Description*\r\n\r\nWhen installing a fresh version of the kitchen sink from the stable branch on github, The first install on the phone crashes, \r\n\r\nif you change the SDK to the 5.1.2 GA and run it works.\r\nif you change the Facebook module to the 4.0.5 and run it works.\r\n\r\nAfter either of these it also works on 5.2.0.v20160219124528 SDK aswell\r\n\r\n*{color:red}This is a Regression.{color}*\r\n\r\n\r\n\r\n*Steps to reproduce:* \r\n# Download a fresh install of the stable kitchen sink \r\n# Change targetSdkVersion to 23 \r\n# add Android config code below to the tiapp.xml\r\n# Run the application with the 5.2.0.v20160219124528 SDK and 5.0.0 Facebook module \r\n\r\n{code:javascript}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n{code}\r\n*Actual :*\r\nThe application crashes \r\n\r\n*Log*\r\n{code:javascript}\r\n-- Start application log -----------------------------------------------------\r\n[INFO] : TiApplication: (main) [0,0] checkpoint, app created.\r\n[INFO] : TiApplication: (main) [51,51] Titanium 5.2.0 (2016/02/19 12:45 fd837d1)\r\n[INFO] : DatabaseHelper: No value in database for platform key: 'unique_machine_id' returning supplied default ''\r\n[INFO] : DatabaseHelper: No value in database for platform key: 'hardware_machine_id' returning supplied default ''\r\n[INFO] : TiApplication: (main) [201,252] Titanium Javascript runtime: v8\r\n[INFO] : TiRootActivity: (main) [0,0] checkpoint, on root activity create, savedInstanceState: null\r\n[ERROR] : TiApplication: (AsyncTask #1) [24,24] Sending event: exception on thread: AsyncTask #1 msg:java.lang.NullPointerException: Attempt to invoke virtual method 'int android.app.Activity.checkSelfPermission(java.lang.String)' on a null object reference; Titanium 5.2.0,2016/02/19 12:45,fd837d1\r\n[ERROR] : TiApplication: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.app.Activity.checkSelfPermission(java.lang.String)' on a null object reference\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.util.TiFileHelper2.hasStoragePermission(TiFileHelper2.java:89)\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.util.TiResponseCache.get(TiResponseCache.java:314)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.CacheAdapter.getJavaCachedResponse(CacheAdapter.java:103)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.CacheAdapter.get(CacheAdapter.java:47)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:229)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:437)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:388)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:501)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105)\r\n[ERROR] : TiApplication: \tat com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphResponse.fromHttpConnection(GraphResponse.java:253)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphRequest.executeConnectionAndWait(GraphRequest.java:1255)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphRequest.executeBatchAndWait(GraphRequest.java:1157)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphRequest.executeBatchAndWait(GraphRequest.java:1124)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphRequest.executeBatchAndWait(GraphRequest.java:1108)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphRequest.executeAndWait(GraphRequest.java:1083)\r\n[ERROR] : TiApplication: \tat com.facebook.GraphRequest.executeAndWait(GraphRequest.java:977)\r\n[ERROR] : TiApplication: \tat com.facebook.internal.Utility.getAppSettingsQueryResponse(Utility.java:868)\r\n[ERROR] : TiApplication: \tat com.facebook.internal.Utility.access$1(Utility.java:860)\r\n[ERROR] : TiApplication: \tat com.facebook.internal.Utility$1.run(Utility.java:797)\r\n[ERROR] : TiApplication: \tat java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)\r\n[ERROR] : TiApplication: \tat java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)\r\n[ERROR] : TiApplication: \tat java.lang.Thread.run(Thread.java:818)\r\n[INFO] : SQLiteConnectionPool: The connection pool for /data/user/0/com.appcelerator.kitchensink/databases/appcAnalytics.db has been closed but there are still 1 connections in use. They will be closed as they are released back to the pool.\r\n[INFO] : SQLiteConnectionPool: The connection pool for /data/user/0/com.appcelerator.kitchensink/databases/appcAnalytics.db has been closed but there are still 1 connections in use. They will be closed as they are released back to the pool.\r\n[ERROR] : TiApplication: (main) [38,62] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start activity ComponentInfo{com.appcelerator.kitchensink/com.appcelerator.kitchensink.KitchensinkActivity}: java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed.; Titanium 5.2.0,2016/02/19 12:45,fd837d1\r\n[ERROR] : TiApplication: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.appcelerator.kitchensink/com.appcelerator.kitchensink.KitchensinkActivity}: java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed.\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.-wrap11(ActivityThread.java)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)\r\n[ERROR] : TiApplication: \tat android.os.Handler.dispatchMessage(Handler.java:102)\r\n[ERROR] : TiApplication: \tat android.os.Looper.loop(Looper.java:148)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.main(ActivityThread.java:5417)\r\n[ERROR] : TiApplication: \tat java.lang.reflect.Method.invoke(Native Method)\r\n[ERROR] : TiApplication: \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)\r\n[ERROR] : TiApplication: \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)\r\n[ERROR] : TiApplication: Caused by: java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed.\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteConnectionPool.throwIfClosedLocked(SQLiteConnectionPool.java:962)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteConnectionPool.waitForConnection(SQLiteConnectionPool.java:677)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteConnectionPool.acquireConnection(SQLiteConnectionPool.java:348)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteSession.acquireConnection(SQLiteSession.java:894)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteSession.executeForCursorWindow(SQLiteSession.java:834)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:62)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:143)\r\n[ERROR] : TiApplication: \tat android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:132)\r\n[ERROR] : TiApplication: \tat android.database.AbstractCursor.moveToPosition(AbstractCursor.java:219)\r\n[ERROR] : TiApplication: \tat android.database.AbstractCursor.moveToNext(AbstractCursor.java:268)\r\n[ERROR] : TiApplication: \tat com.appcelerator.analytics.APSAnalyticsModel.getProps(APSAnalyticsModel.java:307)\r\n[ERROR] : TiApplication: \tat com.appcelerator.analytics.APSAnalyticsModel.addEvent(APSAnalyticsModel.java:78)\r\n[ERROR] : TiApplication: \tat com.appcelerator.analytics.APSAnalyticsHelper.sendAnalyticsEvent(APSAnalyticsHelper.java:523)\r\n[ERROR] : TiApplication: \tat com.appcelerator.analytics.APSAnalyticsHelper.postAnalyticsEvent(APSAnalyticsHelper.java:479)\r\n[ERROR] : TiApplication: \tat com.appcelerator.analytics.APSAnalytics.sendAppEnrollEvent(APSAnalytics.java:121)\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.TiApplication.setRootActivity(TiApplication.java:498)\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.TiRootActivity.onCreate(TiRootActivity.java:94)\r\n[ERROR] : TiApplication: \tat android.app.Activity.performCreate(Activity.java:6251)\r\n[ERROR] : TiApplication: \tat android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)\r\n[WARN] : V8Object: (KrollRuntimeThread) [19,81] Runtime disposed, cannot set property 'userAgent'\r\n[INFO] : Process: Sending signal. PID: 11338 SIG: 9\r\n{code}\r\n\r\n*GA :*\r\n\r\nThe application runs\r\n\r\n*Expected:*\r\nThe application runs", "attachment": [], "flagged": false, "summary": "Kitchen Sink Crashes on initial install ", "creator": { "name": "jlongton", "key": "jlongton", "displayName": "Josh Longton", "active": true, "timeZone": "Europe/London" }, "subtasks": [], "reporter": { "name": "jlongton", "key": "jlongton", "displayName": "Josh Longton", "active": true, "timeZone": "Europe/London" }, "environment": "Appc Studio : 4.5.0.201602170821\r\nTi SDK : 5.2.0.v20160219124528\r\nOS X El Capitan : 10.11.3\r\nAppc NPM : 4.2.3-2\r\nAppc CLI : 5.2.0-269\r\nNode: 4.2.4\r\nNexus 6P - Android 6.0.1", "closedSprints": [ { "id": 574, "state": "closed", "name": "2016 Sprint 4 SDK", "startDate": "2016-02-13T01:33:48.415Z", "endDate": "2016-02-27T01:33:00.000Z", "completeDate": "2016-02-29T03:44:48.886Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "377425", "author": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "body": "Issue as seen in logcat:- \r\n{code}\r\n[ERROR] : TiApplication: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.app.Activity.checkSelfPermission(java.lang.String)' on a null object reference\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.util.TiFileHelper2.hasStoragePermission(TiFileHelper2.java:89)\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.util.TiResponseCache.get(TiResponseCache.java:314)\r\n{code}\r\nPermission check is being done on an activity that is null at that point of initial creation.\r\n\r\nThis was introduced here https://github.com/appcelerator/titanium_mobile/pull/7692 from TIMOB-20251\r\n\r\nPR for fix into 5_2_X : https://github.com/appcelerator/titanium_mobile/pull/7761", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-02-20T05:52:46.000+0000", "updated": "2016-02-20T05:59:54.000+0000" }, { "id": "377426", "author": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "body": "This issue only affects Android 6.0 and above.", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-02-20T05:59:18.000+0000", "updated": "2016-02-20T05:59:18.000+0000" }, { "id": "377427", "author": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "body": "PR Merged in 5_2_X", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-02-20T06:12:28.000+0000", "updated": "2016-02-20T06:12:28.000+0000" }, { "id": "377471", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Closing ticket as fixed. Verified that KitchenSink does not crash on initial launch with Facebook module 5.0.0.\r\n\r\nTested on:\r\n\r\nAppcelerator Studio, build: 4.5.0.201602170821\r\nAppc CLI NPM: 4.2.3-2\r\nAppc CLI Core: 5.2.0-269\r\nArrow: 1.7.27\r\nSDK: 5.2.0.v20160220080449\r\nNode: v4.2.4\r\nOS: El Capitan (10.11.3)\r\nDevice: Nexus 6 (6.0)", "updateAuthor": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-02-22T00:15:50.000+0000", "updated": "2016-02-22T00:15:50.000+0000" }, { "id": "377475", "author": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "body": "Master PR: https://github.com/appcelerator/titanium_mobile/pull/7765", "updateAuthor": { "name": "msamah", "key": "msamah", "displayName": "Ashraf Abu", "active": false, "timeZone": "Asia/Singapore" }, "created": "2016-02-22T01:58:18.000+0000", "updated": "2016-02-22T01:58:18.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }