{ "id": "130615", "key": "TIMOB-17016", "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": "15972", "description": "Release 3.4.0", "name": "Release 3.4.0", "archived": false, "released": true, "releaseDate": "2014-09-28" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2014-08-27T20:44:17.000+0000", "created": "2014-05-19T12:34:38.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "Android", "TabGroup", "module_tabgroup", "qe-testadded" ], "versions": [ { "id": "15971", "description": "Release 3.2.3", "name": "Release 3.2.3", "archived": false, "released": true, "releaseDate": "2014-04-30" } ], "issuelinks": [ { "id": "40854", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "134179", "key": "AC-1178", "fields": { "summary": "Android: App crashes and doesn't starts up normally after been terminated by the device ", "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" } }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "39007", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "132995", "key": "TIMOB-17322", "fields": { "summary": "Android: KS crashes when the developer option \"do not keep activities\" turns on", "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": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "37774", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "110469", "key": "TIMOB-12939", "fields": { "summary": "Android: Developer option \"do not keep activities\" cause Titanium apps to close", "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": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "41160", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "136011", "key": "TIMOB-17959", "fields": { "summary": "Android: Support onSaveInstanceState, onRestoreInstanceState for activities", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "priority": { "name": "None", "id": "6" }, "issuetype": { "id": "2", "description": "A new feature of the product, which has yet to be developed.", "name": "New Feature", "subtask": false } } } } ], "assignee": { "name": "sunila", "key": "sunila", "displayName": "Sunila", "active": true, "timeZone": "Asia/Kolkata" }, "updated": "2014-10-13T21:27:16.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": "When a window is closed and returns to a tabgroup, the app crashes.\r\n\"Unfortunately, YourApp has stopped.\"\r\n{color:red}\r\n[ERROR] : TiApplication: Caused by: android.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n[ERROR] : TiApplication: Caused by: java.lang.InstantiationException: can't instantiate class ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment; no empty constructor\r\n{color}\r\n\r\nTo simulate the error run the code below\r\n\r\n+ Developer options -> Enable \"Don't keep activities\" (Or open plenty of apps in the background)\r\n\r\n{code}\r\nvar tabWin1 = Ti.UI.createWindow({title : 'TW1'});\r\nvar tabWin2 = Ti.UI.createWindow({title : 'TW2'});\r\nvar tab1 = Ti.UI.createTab({window : tabWin1,title : 'Tab 1'});\r\nvar tab2 = Ti.UI.createTab({window : tabWin2,title : 'Tab 2'});\r\nvar tabGroup = Ti.UI.createTabGroup({tabs : [tab1,tab2]});\r\nvar win2 = Ti.UI.createWindow({title: 'Window 2'});\r\nvar openWindowButton = Ti.UI.createButton({widht:Ti.UI.SIZE,height:Ti.UI.SIZE,title:'Open window2'});\r\ntabWin1.add(openWindowButton);\r\nvar closeWindowButton = Ti.UI.createButton({widht:Ti.UI.SIZE,height:Ti.UI.SIZE,title:'Close window2'});\r\nwin2.add(closeWindowButton);\r\nopenWindowButton.addEventListener('click',function(e){win2.open();});\r\ncloseWindowButton.addEventListener('click',function(e){win2.close();});\r\ntabGroup.open();\r\n{code}\r\n\r\n__FULL_ERROR___\r\n{color:red}\r\n[WARN] : dalvikvm: threadid=1: thread exiting with uncaught exception (group=0xa4d48b20)\r\n[ERROR] : TiApplication: (main) [7830,7830] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start activity ComponentInfo{test.geny.com/org.appcelerator.titanium.TiActivity}: android.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public; Titanium 3.2.3,2014/04/22 10:17,b958a70\r\n[ERROR] : TiApplication: java.lang.RuntimeException: Unable to start activity ComponentInfo{test.geny.com/org.appcelerator.titanium.TiActivity}: android.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.access$800(ActivityThread.java:135)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)\r\n[ERROR] : TiApplication: \tat android.os.Handler.dispatchMessage(Handler.java:102)\r\n[ERROR] : TiApplication: \tat android.os.Looper.loop(Looper.java:136)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.main(ActivityThread.java:5017)\r\n[ERROR] : TiApplication: \tat java.lang.reflect.Method.invokeNative(Native Method)\r\n[ERROR] : TiApplication: \tat java.lang.reflect.Method.invoke(Method.java:515)\r\n[ERROR] : TiApplication: \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)\r\n[ERROR] : TiApplication: \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)\r\n[ERROR] : TiApplication: \tat dalvik.system.NativeStart.main(Native Method)\r\n[ERROR] : TiApplication: Caused by: android.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n[ERROR] : TiApplication: \tat android.app.Fragment.instantiate(Fragment.java:601)\r\n[ERROR] : TiApplication: \tat android.app.FragmentState.instantiate(Fragment.java:98)\r\n[ERROR] : TiApplication: \tat android.app.FragmentManagerImpl.restoreAllState(FragmentManager.java:1759)\r\n[ERROR] : TiApplication: \tat android.app.Activity.onCreate(Activity.java:899)\r\n[ERROR] : TiApplication: \tat android.support.v4.app.FragmentActivity.onCreate(FragmentActivity.java:204)\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.TiBaseActivity.onCreate(TiBaseActivity.java:520)\r\n[ERROR] : TiApplication: \tat org.appcelerator.titanium.TiActivity.onCreate(TiActivity.java:18)\r\n[ERROR] : TiApplication: \tat android.app.Activity.performCreate(Activity.java:5231)\r\n[ERROR] : TiApplication: \tat android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)\r\n[ERROR] : TiApplication: \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)\r\n[ERROR] : TiApplication: \t... 11 more\r\n[ERROR] : TiApplication: Caused by: java.lang.InstantiationException: can't instantiate class ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment; no empty constructor\r\n[ERROR] : TiApplication: \tat java.lang.Class.newInstanceImpl(Native Method)\r\n[ERROR] : TiApplication: \tat java.lang.Class.newInstance(Class.java:1208)\r\n[ERROR] : TiApplication: \tat android.app.Fragment.instantiate(Fragment.java:590)\r\n[ERROR] : TiApplication: \t... 20 more\r\n[INFO] : Process: Sending signal. PID: 1446 SIG: 9\r\n{color}", "attachment": [], "flagged": false, "summary": "Android: Closing Window and returning to TabGroup crashes app with \"Unable to instantiate fragment\"", "creator": { "name": "bar b", "key": "bar b", "displayName": "Bar Bruy", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "bar b", "key": "bar b", "displayName": "Bar Bruy", "active": true, "timeZone": "Europe/Berlin" }, "environment": "Android\r\nTitanium sdk 3.2.3.GA\r\ntested on Genymotion and LG G TAB 8.3", "closedSprints": [ { "id": 133, "state": "closed", "name": "2014 Sprint 13 SDK", "startDate": "2014-06-23T21:55:20.791Z", "endDate": "2014-07-04T00:00:00.000Z", "completeDate": "2014-07-07T17:32:18.561Z", "originBoardId": 100 }, { "id": 121, "state": "closed", "name": "2014 Sprint 12 SDK", "startDate": "2014-06-09T21:51:17.043Z", "endDate": "2014-06-21T00:00:00.000Z", "completeDate": "2014-06-23T16:52:29.621Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "305538", "author": { "name": "ragrawal", "key": "ragrawal", "displayName": "Ritu Agrawal", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "ragrawal", "key": "ragrawal", "displayName": "Ritu Agrawal", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-05-19T17:28:57.000+0000", "updated": "2014-05-19T17:28:57.000+0000" }, { "id": "305656", "author": { "name": "bar b", "key": "bar b", "displayName": "Bar Bruy", "active": true, "timeZone": "Europe/Berlin" }, "body": "On re-create android requires you to add a empty constructor.\r\nI assume this is correctly implemented in Ti.UI.Window but not in Ti.UI.TabGroup\r\n\r\nti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public;\r\n\r\nTitanium sdk 3.2.3.GA \r\ntested on Genymotion and LG G TAB 8.3", "updateAuthor": { "name": "bar b", "key": "bar b", "displayName": "Bar Bruy", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-05-20T06:47:10.000+0000", "updated": "2014-05-20T06:47:10.000+0000" }, { "id": "306034", "author": { "name": "ragrawal", "key": "ragrawal", "displayName": "Ritu Agrawal", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Moving this ticket to engineering as I can reproduce this issue with the provided test case. Note that this ticket is similar to TIMOB-12939 but that ticket was already fixed in 3.2.0 and I can still reproduce this issue with 3.2.3 release.", "updateAuthor": { "name": "ragrawal", "key": "ragrawal", "displayName": "Ritu Agrawal", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-05-22T05:01:33.000+0000", "updated": "2014-05-22T05:01:33.000+0000" }, { "id": "308880", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "I can reproduce this too on an HTC One V , android 4.0.3, Ti 3.2.3.GA\r\nAlso my client has this on a Samsung S4 Mini (GT-I9195) with android 4.2.2\r\n\r\nI don't have the \"Don't keep activities\" options enabled, however from time to time my app shows the above error when coming back from the background.\r\nIt's a heavy app and eats pretty much memory so I assume at some point the OS tries to free it.\r\n\r\nThank you.", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-06-13T11:35:32.000+0000", "updated": "2014-06-13T11:35:32.000+0000" }, { "id": "309428", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "Seeing this on Samsung Galaxy Nexus 4.3\r\nTi. 3.2.3.GA", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-06-17T21:50:45.000+0000", "updated": "2014-06-17T21:50:45.000+0000" }, { "id": "310343", "author": { "name": "sunila", "key": "sunila", "displayName": "Sunila", "active": true, "timeZone": "Asia/Kolkata" }, "body": "Added empty constructor so that Android can restore the state. Since Android restore fragments on orientation change, make sure the properties are set correctly\r\n\r\nhttps://github.com/appcelerator/titanium_mobile/pull/5836", "updateAuthor": { "name": "sunila", "key": "sunila", "displayName": "Sunila", "active": true, "timeZone": "Asia/Kolkata" }, "created": "2014-06-22T08:44:30.000+0000", "updated": "2014-06-22T08:44:30.000+0000" }, { "id": "313968", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The current fix has a few remaining issues and touches a few core areas that make it too risky to pull in at this late stage. Our current plan is to merge this in right post-release, and then affected users can grab it from CI.", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-07-14T21:48:52.000+0000", "updated": "2014-07-14T21:48:52.000+0000" }, { "id": "316268", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-07-30T11:09:36.000+0000", "updated": "2014-07-30T11:09:36.000+0000" }, { "id": "317110", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "@Ingo has the fix been merged to CI? ", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-05T16:41:25.000+0000", "updated": "2014-08-05T16:41:25.000+0000" }, { "id": "317111", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "I'd like to know too :)", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-08-05T16:46:54.000+0000", "updated": "2014-08-05T16:46:54.000+0000" }, { "id": "317130", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "It appears we are waiting on another PR to be merged first. [~hpham] can you check please?", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-05T18:02:39.000+0000", "updated": "2014-08-05T18:02:39.000+0000" }, { "id": "318999", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "Any news? I have an app in production that is crashing every single time it is relaunched.", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-17T17:15:15.000+0000", "updated": "2014-08-17T17:15:15.000+0000" }, { "id": "320459", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Extended test case:\r\n{code}\r\nvar tabWin1 = Ti.UI.createWindow({title : 'TW1',backgroundColor:'blue'});\r\nvar tabWin2 = Ti.UI.createWindow({title : 'TW2',backgroundColor:'red'});\r\nvar tabWin3 = Ti.UI.createWindow({title : 'TW3',backgroundColor:'green'});\r\nvar tabWin4 = Ti.UI.createWindow({title : 'TW4',backgroundColor:'yellow'});\r\n\r\n\r\nvar tab1 = Ti.UI.createTab({window : tabWin1,title : 'Tab 1'});\r\nvar tab2 = Ti.UI.createTab({window : tabWin2,title : 'Tab 2'});\r\nvar tab3 = Ti.UI.createTab({window : tabWin3,title : 'Tab 3'});\r\nvar tab4 = Ti.UI.createTab({window : tabWin4,title : 'Tab 4'});\r\n\r\n\r\nvar tabGroup = Ti.UI.createTabGroup({tabs : [tab1,tab2,tab3]});\r\n\r\nvar win2 = Ti.UI.createWindow({title: 'Window 2'});\r\n\r\nvar openWindowButton = Ti.UI.createButton({widht:Ti.UI.SIZE,height:Ti.UI.SIZE,title:'Open window2'});\r\nvar deleteTabButton = Ti.UI.createButton({top: 10, title: 'Delete Tab2'});\r\nvar addTabButton = Ti.UI.createButton({bottom: 10, title: 'Add Tab4'});\r\ntabWin1.add(deleteTabButton);\r\ntabWin1.add(openWindowButton);\r\ntabWin1.add(addTabButton);\r\n\r\nvar closeWindowButton = Ti.UI.createButton({widht:Ti.UI.SIZE,height:Ti.UI.SIZE,title:'Close window2'});\r\nwin2.add(closeWindowButton);\r\n\r\nopenWindowButton.addEventListener('click',function(e){win2.open();});\r\ndeleteTabButton.addEventListener('click', function(e){tabGroup.removeTab(tab2)});\r\naddTabButton.addEventListener('click', function(e){tabGroup.addTab(tab4)});\r\ncloseWindowButton.addEventListener('click',function(e){win2.close();});\r\n\r\ntabGroup.open();\r\n{code}", "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-26T21:42:32.000+0000", "updated": "2014-08-26T21:42:32.000+0000" }, { "id": "320791", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Issue Still persist. I tried using the same scenario for the default KS(kitchen sink). \r\n\r\nInstalled the app and then browse other app while my app was in background. After browsing other apps i resumed my app and it crashed.\r\n\r\nThis is happening for any app.(even a single window app)\r\n\r\nEDIT: \r\nSDK version used : 3.4.0.v20140827165712\r\n\r\n", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-28T14:47:47.000+0000", "updated": "2014-08-28T14:55:22.000+0000" }, { "id": "320796", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~ankesh27] What is the stack trace you get?", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-28T15:03:50.000+0000", "updated": "2014-08-28T15:03:50.000+0000" }, { "id": "320816", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "its the same Fragment error as mentioned in the issue initially. This time I am using a module but I think the error is not because of the module\r\n\r\n\r\n{color:red}\r\n 08-28 19:53:49.025: E/AndroidRuntime(21522): FATAL EXCEPTION: main\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp/org.appcelerator.titanium.TiActivity}: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.navid.tabs.ViewPagerFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2306)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2358)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.ActivityThread.access$600(ActivityThread.java:156)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1340)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.os.Looper.loop(Looper.java:153)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.ActivityThread.main(ActivityThread.java:5297)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat java.lang.reflect.Method.invoke(Method.java:511)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat dalvik.system.NativeStart.main(Native Method)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): Caused by: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.navid.tabs.ViewPagerFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.support.v4.app.Fragment.instantiate(Fragment.java:413)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.support.v4.app.FragmentState.instantiate(Fragment.java:97)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.support.v4.app.FragmentManagerImpl.restoreAllState(FragmentManager.java:1801)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.support.v4.app.FragmentActivity.onCreate(FragmentActivity.java:213)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:97)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat org.appcelerator.titanium.TiBaseActivity.onCreate(TiBaseActivity.java:472)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat org.appcelerator.titanium.TiActivity.onCreate(TiActivity.java:18)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.Activity.performCreate(Activity.java:5122)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2270)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \t... 11 more\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): Caused by: java.lang.InstantiationException: can't instantiate class com.navid.tabs.ViewPagerFragment; no empty constructor\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat java.lang.Class.newInstanceImpl(Native Method)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat java.lang.Class.newInstance(Class.java:1319)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \tat android.support.v4.app.Fragment.instantiate(Fragment.java:402)\r\n08-28 19:53:49.025: E/AndroidRuntime(21522): \t... 20 more\r\n08-28 19:53:49.116: E/AppErrorDialog(520): Failed to get ILowStorageHandle instance\r\n08-28 19:53:49.942: E/AEE/DUMPSTATE(21552): copy_process: execv /system/xbin/showmap failed(2), No such file or directory\r\n08-28 19:53:50.451: E/AEE/DUMPSTATE(21550): copy_file: Copy /proc/gpulog to SYS_GPU_INFO failed(2), No such file or directory\r\n08-28 19:53:50.725: E/Fence(610): dequeueBuffer_DEPRECATED: fence 71 didn't signal in 300 ms\r\n08-28 19:53:51.931: E/AEE/DUMPSTATE(21557): copy_process: execv /system/xbin/procrank failed(2), No such file or directory\r\n08-28 19:53:52.770: E/AEE/DUMPSTATE(21550): copy_file: Copy /proc/slabinfo to SYS_SLAB_INFO failed(2), No such file or directory\r\n08-28 19:53:53.116: E/AEE/DUMPSTATE(21550): copy_file: Copy /sys/kernel/debug/wakeup_sources to SYS_KERNEL_WAKELOCKS failed(2), No such file or directory\r\n08-28 19:53:53.206: E/AEE/DUMPSTATE(21562): copy_process: execv /system/xbin/librank failed(2), No such file or directory\r\n08-28 19:53:53.432: E/AEE/DUMPSTATE(21566): copy_process: execv /system/xbin/proc_mem failed(2), No such file or directory\r\n\r\n{color} ", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-28T16:11:52.000+0000", "updated": "2014-08-28T16:11:52.000+0000" }, { "id": "320887", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified the fix.\r\n\r\nI built the app with & without a module & did not see any crash or fragment errors.\r\n\r\nEnvironment:\r\nAppc Studio : 3.4.0.201408270900\r\nTi SDK : 3.4.0.v20140827165712\r\nMac OSX : 10.9.4\r\nAlloy : 1.5.0-dev\r\nCLI - 3.4.0-dev\r\nCode Processor: 1.1.1\r\nAndroid 4.2 -Nexus 4", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-28T21:24:39.000+0000", "updated": "2014-08-28T21:24:39.000+0000" }, { "id": "320956", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Here is the error, I have used KS this time. \r\n\r\nAgain i did the same thing. I opened KS and then pressed home button. I then started browsing other apps for 3 minutes. \r\n\r\nAfter returning back to my KS(kitchen-sink) app, it crashed. Below is the ddms log.\r\n\r\n\r\n{color:red}\r\n 08-29 10:39:02.519: E/TiApplication(30628): (main) [380,1521] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to destroy activity {com.appcelerator.kitchensink/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException; Titanium 3.4.0,2014/08/27 16:57,5640a23\r\n08-29 10:39:02.519: E/TiApplication(30628): java.lang.RuntimeException: Unable to destroy activity {com.appcelerator.kitchensink/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3624)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3642)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.ActivityThread.access$1200(ActivityThread.java:156)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1393)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.os.Looper.loop(Looper.java:153)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.ActivityThread.main(ActivityThread.java:5297)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat java.lang.reflect.Method.invoke(Method.java:511)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat dalvik.system.NativeStart.main(Native Method)\r\n08-29 10:39:02.519: E/TiApplication(30628): Caused by: java.lang.NullPointerException\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment.onCreateView(TiUIActionBarTab.java:39)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.Fragment.performCreateView(Fragment.java:1500)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:938)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1115)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1097)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentManagerImpl.dispatchReallyStop(FragmentManager.java:1922)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentActivity.onReallyStop(FragmentActivity.java:809)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentActivity.doReallyStop(FragmentActivity.java:786)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.support.v4.app.FragmentActivity.onDestroy(FragmentActivity.java:333)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat org.appcelerator.titanium.TiBaseActivity.onDestroy(TiBaseActivity.java:1245)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat org.appcelerator.titanium.TiActivity.onDestroy(TiActivity.java:29)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.Activity.performDestroy(Activity.java:5291)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1112)\r\n08-29 10:39:02.519: E/TiApplication(30628): \tat android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3611)\r\n08-29 10:39:02.519: E/TiApplication(30628): \t... 11 more\r\n{color}\r\n{color:blue}\r\nOperating System\r\n Name = Mac OS X\r\n Version = 10.9.4\r\n Architecture = 64bit\r\n Memory = 8.0GB\r\n\r\nNode.js\r\n Node.js Version = 0.10.31\r\n npm Version = 1.4.23\r\n\r\n\r\nTitanium CLI\r\n CLI Version = 3.3.0\r\n node-appc Version = 0.2.14\r\n\r\nTitanium SDKs\r\n 3.4.0.v20140827165712\r\n\r\n{color}", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-29T05:16:15.000+0000", "updated": "2014-08-29T05:16:15.000+0000" }, { "id": "320988", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~ankesh27] I have also fixed this in my PR for swipe tabs: https://github.com/mokesmokes/titanium_mobile/tree/TIMOB-13392\r\nThere are differences since the underlying fragment handling in swipe tabs is totally different, so please give it a shot.", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-08-29T09:08:28.000+0000", "updated": "2014-08-29T09:09:50.000+0000" }, { "id": "320991", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~mokesmokes] Thank you for sharing, but I am not very sure of how do I use your link. Can you please help me on this.\r\n\r\nAlso, kitchen sink is a default tabbed application, why does it crashes :(\r\n\r\n", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-29T09:31:35.000+0000", "updated": "2014-08-29T09:33:14.000+0000" }, { "id": "320998", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~ankesh27]\r\n{code}\r\ngit clone https://github.com/mokesmokes/titanium_mobile.git\r\ngit checkout TIMOB-13392\r\ncd titanium_mobile\r\nscons build_jsca=0\r\n{code}\r\nJust make sure to setup your environment as written here: http://docs.appcelerator.com/titanium/3.0/#!/guide/Building_the_Titanium_SDK_From_Source", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-08-29T09:44:16.000+0000", "updated": "2014-08-29T09:44:16.000+0000" }, { "id": "321006", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~mokesmokes], do you have the compiled version uploaded anywhere, I am struggling to run scons build_jsca=0\r\n\r\nError : \r\n{color:red}\r\n[exec] /Users/myuser/Documents/android-ndk-r9/build/core/add-application.mk:49: /Users/myuser/Library/Application: No such file or directory\r\n [exec] /Users/myuser/Documents/android-ndk-r9/build/core/add-application.mk:186: *** Android NDK: Aborting... . Stop.\r\n [exec] Android NDK: There is no Android.mk under /Users/myuser/Library/Application/jni \r\n [exec] Android NDK: If this is intentional please define APP_BUILD_SCRIPT to point \r\n [exec] Android NDK: to a valid NDK build script. \r\n{color}", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-29T11:18:04.000+0000", "updated": "2014-08-29T11:18:04.000+0000" }, { "id": "321013", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": ":( things are same as it were..\r\n\r\nI think its a bug in SDK because even the Kitchen -Sink app crashed...\r\n\r\nIt's getting really frustrating for me as I cannot do anything to fix this and I cannot go public with the crash issue.\r\n\r\n\r\n{color:red}\r\n\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): FATAL EXCEPTION: main\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp/org.appcelerator.titanium.TiActivity}: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.navid.tabs.ViewPagerFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2306)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2358)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.ActivityThread.access$600(ActivityThread.java:156)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1340)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.os.Looper.loop(Looper.java:153)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.ActivityThread.main(ActivityThread.java:5297)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat java.lang.reflect.Method.invoke(Method.java:511)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat dalvik.system.NativeStart.main(Native Method)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): Caused by: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.navid.tabs.ViewPagerFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.support.v4.app.Fragment.instantiate(Fragment.java:413)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.support.v4.app.FragmentState.instantiate(Fragment.java:97)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.support.v4.app.FragmentManagerImpl.restoreAllState(FragmentManager.java:1801)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.support.v4.app.FragmentActivity.onCreate(FragmentActivity.java:213)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:97)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat org.appcelerator.titanium.TiBaseActivity.onCreate(TiBaseActivity.java:472)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat org.appcelerator.titanium.TiActivity.onCreate(TiActivity.java:18)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.Activity.performCreate(Activity.java:5122)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2270)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \t... 11 more\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): Caused by: java.lang.InstantiationException: can't instantiate class com.navid.tabs.ViewPagerFragment; no empty constructor\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat java.lang.Class.newInstanceImpl(Native Method)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat java.lang.Class.newInstance(Class.java:1319)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \tat android.support.v4.app.Fragment.instantiate(Fragment.java:402)\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): \t... 20 more\r\n08-29 18:30:21.810: E/AppErrorDialog(520): Failed to get ILowStorageHandle instance\r\n08-29 18:30:23.468: E/AEE/DUMPSTATE(22149): copy_process: execv /system/xbin/showmap failed(2), No such file or directory\r\n08-29 18:30:23.489: E/Fence(610): dequeueBuffer_DEPRECATED: fence 66 didn't signal in 300 ms\r\n08-29 18:30:24.015: E/AEE/DUMPSTATE(22147): copy_file: Copy /proc/gpulog to SYS_GPU_INFO failed(2), No such file or directory\r\n08-29 18:30:25.597: E/AEE/DUMPSTATE(22156): copy_process: execv /system/xbin/procrank failed(2), No such file or directory\r\n08-29 18:30:26.519: E/AEE/DUMPSTATE(22147): copy_file: Copy /proc/slabinfo to SYS_SLAB_INFO failed(2), No such file or directory\r\n08-29 18:30:26.728: E/AEE/DUMPSTATE(22147): copy_file: Copy /sys/kernel/debug/wakeup_sources to SYS_KERNEL_WAKELOCKS failed(2), No such file or directory\r\n08-29 18:30:26.850: E/AEE/DUMPSTATE(22207): copy_process: execv /system/xbin/librank failed(2), No such file or directory\r\n08-29 18:30:27.177: E/AEE/DUMPSTATE(22212): copy_process: execv /system/xbin/proc_mem failed(2), No such file or directory\r\n08-29 18:30:28.245: E/InputDispatcher(520): channel '4153fd70 com.imdb.mobile/com.imdb.mobile.activity.FragmentMoviesActivity (server)' ~ Channel is unrecoverably broken and will be disposed!\r\n08-29 18:30:28.248: E/InputDispatcher(520): channel '4155bc70 com.imdb.mobile/com.imdb.mobile.activity.movies.MoviesBoxOfficeUSActivity (server)' ~ Channel is unrecoverably broken and will be disposed!\r\n{color}\r\n\r\n", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-29T13:04:18.000+0000", "updated": "2014-08-29T13:04:18.000+0000" }, { "id": "321015", "author": { "name": "JB", "key": "jb", "displayName": "Johann Borck", "active": true, "timeZone": "Europe/Berlin" }, "body": "Having almost the same issue. After launching Hello World app, switching between apps and then back to Titanium app, it crashes with this very error. This is using Titanium SDK version 3.3.0.GA (I didn't change one line after doing titanium create --name MyFirstProject)\r\n\r\n{color:red}\r\n (main) [29685,29685] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test/org.appcelerator.titanium.TiActivity}: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public; Titanium 3.3.0,2014/07/11 12:36,787cd39\r\n java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test/org.appcelerator.titanium.TiActivity}: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2077)\r\n at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2102)\r\n at android.app.ActivityThread.access$600(ActivityThread.java:137)\r\n at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1210)\r\n at android.os.Handler.dispatchMessage(Handler.java:99)\r\n at android.os.Looper.loop(Looper.java:137)\r\n at android.app.ActivityThread.main(ActivityThread.java:4838)\r\n at java.lang.reflect.Method.invokeNative(Native Method)\r\n at java.lang.reflect.Method.invoke(Method.java:511)\r\n at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:875)\r\n at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:642)\r\n at dalvik.system.NativeStart.main(Native Method)\r\n Caused by: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n at android.support.v4.app.Fragment.instantiate(Fragment.java:413)\r\n at android.support.v4.app.FragmentState.instantiate(Fragment.java:97)\r\n at android.support.v4.app.FragmentManagerImpl.restoreAllState(FragmentManager.java:1801)\r\n at android.support.v4.app.FragmentActivity.onCreate(FragmentActivity.java:213)\r\n at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:97)\r\n at org.appcelerator.titanium.TiBaseActivity.onCreate(TiBaseActivity.java:511)\r\n at org.appcelerator.titanium.TiActivity.onCreate(TiActivity.java:18)\r\n at android.app.Activity.performCreate(Activity.java:5010)\r\n at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)\r\n at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2041)\r\n ... 11 more\r\n Caused by: java.lang.InstantiationException: can't instantiate class ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment; no empty constructor\r\n at java.lang.Class.newInstanceImpl(Native Method)\r\n at java.lang.Class.newInstance(Class.java:1319)\r\n at android.support.v4.app.Fragment.instantiate(Fragment.java:402)\r\n ... 20 more\r\n{color}\r\n", "updateAuthor": { "name": "JB", "key": "jb", "displayName": "Johann Borck", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-08-29T13:27:37.000+0000", "updated": "2014-08-29T14:00:10.000+0000" }, { "id": "321016", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~ankesh27] the trace you posted is definitely a bug in your module code. Here is the key:\r\n{color:red}\r\n08-29 18:30:21.750: E/AndroidRuntime(22121): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp/org.appcelerator.titanium.TiActivity}: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.navid.tabs.ViewPagerFragment: make sure class name exists, is public, and has an empty constructor that is public\r\n{color}\r\n\r\nFollow the instructions it tells you: make sure class name exists, is public, and has an empty constructor that is public. \r\nIf Kitchen Sink crashes as well, then please post that stack trace. Did you try to recreate the Kitchen Sink crash with my SDK?\r\nMake sure the tabs are swipeable, that's how you will know you're using the right SDK... And don't forget to clean the project build between SDK changes.", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-08-29T13:28:17.000+0000", "updated": "2014-08-29T13:29:33.000+0000" }, { "id": "321019", "author": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "swipeable tabs ? [https://gist.github.com/aaronksaunders/2765676]\r\n\r\nFor my swipeable tabs I have used [https://github.com/ricardoalcocer/viewpager]\r\n\r\n\r\n", "updateAuthor": { "name": "ankesh27", "key": "ankesh27", "displayName": "Ankesh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-29T13:52:30.000+0000", "updated": "2014-08-29T13:52:30.000+0000" }, { "id": "321022", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "[~JB] this issue had the fix being discussed here applied after Ti SDK 3.3.0GA SDK was released. You need to install a [continuous build|http://docs.appcelerator.com/titanium/latest/#!/guide/Installing_Titanium_SDK_Continuous_Builds] in order to test the changes. It appears that others are using continuous build version 3.4.0.v20140827165712 as a point of reference.", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-29T14:08:20.000+0000", "updated": "2014-08-29T14:08:20.000+0000" }, { "id": "321023", "author": { "name": "JB", "key": "jb", "displayName": "Johann Borck", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~adampax] that worked, thanks!", "updateAuthor": { "name": "JB", "key": "jb", "displayName": "Johann Borck", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-08-29T14:29:12.000+0000", "updated": "2014-08-29T14:30:03.000+0000" }, { "id": "321024", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "Tested with an app that was getting the 'unable to instantiate fragment' error on SDKs 3.2.3 and 3.3.0. \r\n\r\nTi SDK 3.4.0.v20140827165712 \r\nStudio 3.3.0.201407100905\r\nTI CLI 3.3.0\r\nMac OS X 10.9.4\r\n\r\nGalaxy Nexus 4.3\r\n\r\nRan the app, put it in background, opened 4-5 other apps, tried to reopen the app and got this error:\r\n\r\n{color: red}\r\n08-29 09:54:02.914: E/TiApplication(24550): (main) [694,2934] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to destroy activity {com.polancomedia.soonerbeta/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException; Titanium 3.4.0,2014/08/27 16:57,5640a23\r\n08-29 09:54:02.914: E/TiApplication(24550): java.lang.RuntimeException: Unable to destroy activity {com.polancomedia.soonerbeta/org.appcelerator.titanium.TiActivity}: java.lang.NullPointerException\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3499)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3517)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.ActivityThread.access$1200(ActivityThread.java:141)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1309)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.os.Looper.loop(Looper.java:137)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.ActivityThread.main(ActivityThread.java:5103)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat java.lang.reflect.Method.invoke(Method.java:525)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat dalvik.system.NativeStart.main(Native Method)\r\n08-29 09:54:02.914: E/TiApplication(24550): Caused by: java.lang.NullPointerException\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat ti.modules.titanium.ui.widget.tabgroup.TiUIActionBarTab$TabFragment.onCreateView(TiUIActionBarTab.java:39)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.Fragment.performCreateView(Fragment.java:1500)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:938)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1115)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1097)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentManagerImpl.dispatchReallyStop(FragmentManager.java:1922)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentActivity.onReallyStop(FragmentActivity.java:809)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentActivity.doReallyStop(FragmentActivity.java:786)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.support.v4.app.FragmentActivity.onDestroy(FragmentActivity.java:333)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat org.appcelerator.titanium.TiBaseActivity.onDestroy(TiBaseActivity.java:1245)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat org.appcelerator.titanium.TiActivity.onDestroy(TiActivity.java:29)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.Activity.performDestroy(Activity.java:5302)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.Instrumentation.callActivityOnDestroy(Instrumentation.java:1117)\r\n08-29 09:54:02.914: E/TiApplication(24550): \tat android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3486)\r\n08-29 09:54:02.914: E/TiApplication(24550): \t... 11 more\r\n{color}", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-29T15:08:01.000+0000", "updated": "2014-08-29T15:11:47.000+0000" }, { "id": "321054", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~adampax] do you want to give this SDK a try? http://goo.gl/ZtPIFg (the link I gave previously had a bug I since fixed).\r\n\r\n[~ankesh27] I actually tried the swipe tabs you mention (Ricardo's), and on my Samsung S4 4.4.2 with SDK 3.4.0 it crashed repeatedly. In any case it's missing the point: We want a TabGroup API that is as similar as possible across different platforms (i.e. Ti.UI.TabGroup), and also compatible with existing TabGroup code: you should be able to drop it in to your existing tabbed project and voila - on Android the tabs swipe with zero code changes (e.g. try building Kitchen Sink with it). Plus, I looked at the internal implementation of that project and it needs some work..... ", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-08-29T16:54:53.000+0000", "updated": "2014-08-29T16:54:53.000+0000" }, { "id": "321064", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "[~mokesmokes] yes that SDK worked for me. Swiping tabs works as well.\r\n\r\nTested the same as before: launch app, send to background, open several other apps, then try to resume original app. The app resumed without error with your SDK.", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-29T17:21:24.000+0000", "updated": "2014-08-29T17:21:24.000+0000" }, { "id": "321065", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "Awesome, good to hear. Hopefully it will be merged soon, in the meantime you can keep up with it at https://github.com/mokesmokes/titanium_mobile/tree/TIMOB-13392", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-08-29T17:25:15.000+0000", "updated": "2014-08-29T17:27:18.000+0000" }, { "id": "321076", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "[~ingo] can this ticket be reopened?", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-29T18:27:02.000+0000", "updated": "2014-08-29T18:27:02.000+0000" }, { "id": "321081", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~adampax] I can, but I need a test case attached to the ticket that reproduces the issue. The current test case was verified as fixed. Can you provide one?", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-29T19:02:57.000+0000", "updated": "2014-08-29T19:02:57.000+0000" }, { "id": "321085", "author": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "body": "[~ingo] sure, but not until Tuesday. Maybe one of the other people following this ticket can hop on here and paste code for a tabgroup app.", "updateAuthor": { "name": "adampax", "key": "adampax", "displayName": "Adam Paxton", "active": true, "timeZone": "America/New_York" }, "created": "2014-08-29T19:42:54.000+0000", "updated": "2014-08-29T19:42:54.000+0000" }, { "id": "321321", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~mokesmokes] I tested this and my app still dies :(\r\n\r\nI took the master branch (3.4.0.v20140829181714) that seems to have your fixed merged and this is the log I get:\r\n{code}\r\n09-02 15:43:27.043: W/TiBaseActivity(19945): (main) [10,775] Runtime has been disposed or app has been killed. Finishing.\r\n09-02 15:43:27.043: W/TiApplication(19945): (main) [4,779] Scheduling application restart\r\n09-02 15:43:27.133: W/V8Object(19945): (KrollRuntimeThread) [94,873] Runtime disposed, cannot set property 'userAgent'\r\n{code}\r\n\r\nSo basically is not a crash by itself, but it seems like a forced restart. \r\nOther apps do the same of course, but the behaviour is different, they start as \"empty\" then show the content, while my app starts \"empty\" closes, and then starts over again.\r\n\r\nThe device is a OnePlus with Android 4.4.4 on it.", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-09-02T14:04:08.000+0000", "updated": "2014-09-02T14:10:25.000+0000" }, { "id": "321348", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~rborn] that is not an issue with the PR, but a general Titanium issue I believe. I don't know if they have a plan to deal with this. I agree with you it is an issue that needs to be dealt with.", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-09-02T16:44:23.000+0000", "updated": "2014-09-02T16:44:23.000+0000" }, { "id": "321352", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[~rborn] Is this issue in a different ticket? I'm assuming this is not a regression, correct (or did it work in a previous SDK)?", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-09-02T16:58:25.000+0000", "updated": "2014-09-02T16:58:25.000+0000" }, { "id": "321354", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~ingo] I only tested with the master branch version above as any other sdk was triggering the crash (Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start activity)\r\n\r\nAs I said, this time is not a real crash - aka no error in the console - but more an annoying restart so maybe is not the same issue?", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-09-02T17:06:34.000+0000", "updated": "2014-09-02T17:06:34.000+0000" }, { "id": "321356", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~mokesmokes] I see, thank you.", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-09-02T17:07:11.000+0000", "updated": "2014-09-02T17:07:11.000+0000" }, { "id": "321450", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "For this issue, please update to the latest PR: https://github.com/mokesmokes/titanium_mobile/tree/TIMOB-13392\r\nNow it's fixed :)", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-09-02T21:44:27.000+0000", "updated": "2014-09-02T21:44:27.000+0000" }, { "id": "321451", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~ingo] , the issue [~rborn] pointed out deserves attention. Can we get some explanation of why Titanium apps need to restart from scratch when killed, and not restart from a previous existing state?", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-09-02T21:46:55.000+0000", "updated": "2014-09-02T21:46:55.000+0000" }, { "id": "321545", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~mokesmokes] I tried your build (after ages of \"scons-ing\" :D) and I still have the ugly restart. \r\nOr did I understand wrong what's fixed in TIMOB-13392 ?", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-09-03T10:35:34.000+0000", "updated": "2014-09-03T10:35:34.000+0000" }, { "id": "321553", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "body": "[~rborn] this issue and my PR only deal with the TabGroup - which crashed the app on occasion. The issue you're pointing out has nothing to do with tabs, and is not a \"crash\", but a forced restart. It will occur with regular windows as well as tabs. As I said, in my eyes it's a serious issue that needs to be dealt with, but has nothing to do with this particular ticket.", "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-09-03T12:02:11.000+0000", "updated": "2014-09-03T12:02:11.000+0000" }, { "id": "321554", "author": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "body": "Oh, understood. Thank you.", "updateAuthor": { "name": "rborn", "key": "rborn", "displayName": "Dan Tamas", "active": true, "timeZone": "Europe/Berlin" }, "created": "2014-09-03T12:06:24.000+0000", "updated": "2014-09-03T12:06:24.000+0000" }, { "id": "321867", "author": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "updateAuthor": { "name": "mokesmokes", "key": "mokesmokes", "displayName": "Mark Mokryn", "active": true, "timeZone": "Asia/Jerusalem" }, "created": "2014-09-04T18:07:38.000+0000", "updated": "2014-09-04T18:07:38.000+0000" }, { "id": "323395", "author": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Verified the fix.\r\n\r\nWe do not see any app crash with \"Unable to instantiate fragment\" when closing a window & returning to tabgroup.\r\n\r\nClosing.\r\n\r\nEnvironment:\r\nAppc Studio : 3.4.0.201409112242\r\nTi SDK : 3.4.0.v20140912084114 \r\nMac OSX : 10.9.4\r\nAlloy : 1.5.0-rc\r\nCLI - 3.4.0-rc2\r\nCode Processor: 1.1.1\r\nGalaxy S4 - android 4.4.2", "updateAuthor": { "name": "lchoudhary", "key": "lchoudhary", "displayName": "Lokesh Choudhary", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-09-12T18:54:10.000+0000", "updated": "2014-09-12T18:54:10.000+0000" } ], "maxResults": 48, "total": 48, "startAt": 0 } } }