{
"id": "140148",
"key": "ALOY-1242",
"fields": {
"issuetype": {
"id": "1",
"description": "A problem which impairs or prevents the functions of the product.",
"name": "Bug",
"subtask": false
},
"project": {
"id": "11113",
"key": "ALOY",
"name": "Alloy",
"projectCategory": {
"id": "10400",
"description": "Tools for developing applications",
"name": "Tooling"
}
},
"fixVersions": [],
"resolution": null,
"resolutiondate": null,
"created": "2014-11-21T15:54:59.000+0000",
"priority": {
"name": "Medium",
"id": "3"
},
"labels": [
"android"
],
"versions": [],
"issuelinks": [],
"assignee": {
"name": "skypanther",
"key": "skypanther",
"displayName": "Tim Poulsen",
"active": true,
"timeZone": "America/New_York"
},
"updated": "2015-02-11T22:20:11.000+0000",
"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"
}
},
"components": [],
"description": "How to reproduce:\r\n# make new alloy project\r\n# add the following files:\r\n** controllers/index.js\r\n{code}\r\n$.index.open();\r\n$.contentView.add(Alloy.createController('list').getView());\r\n{code}\r\n** controllers/list.js (empty)\r\n** controllers/test.js (empty)\r\n** views/index.xml\r\n{code}\r\n\r\n \r\n \r\n \r\n\r\n{code}\r\n** views/list.xml\r\n{code}\r\n\r\n \r\n\r\n{code}\r\n** views/test.xml\r\n{code}\r\n\r\n \r\n\r\n{code}\r\n\r\nSame problem exists when doing this inside a Widget with and Widget.createController(). \r\n\r\nThis code causes the following crash on starting the app on Android.\r\n{code}\r\n[ERROR] TiApplication: (main) [316,316] Sending event: exception on thread: main msg:java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test/org.appcelerator.titanium.TiActivity}: java.lang.ClassCastException: java.util.HashMap cannot be cast to org.appcelerator.titanium.proxy.TiViewProxy; Titanium 3.4.1,2014/11/13 13:33,5982e8f\r\n[ERROR] TiApplication: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test/org.appcelerator.titanium.TiActivity}: java.lang.ClassCastException: java.util.HashMap cannot be cast to org.appcelerator.titanium.proxy.TiViewProxy\r\n[ERROR] TiApplication: \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)\r\n[ERROR] TiApplication: \tat android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)\r\n[ERROR] TiApplication: \tat android.app.ActivityThread.access$600(ActivityThread.java:141)\r\n[ERROR] TiApplication: \tat android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)\r\n[ERROR] TiApplication: \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\n[ERROR] TiApplication: \tat android.os.Looper.loop(Looper.java:137)\r\n[ERROR] TiApplication: \tat android.app.ActivityThread.main(ActivityThread.java:5103)\r\n[ERROR] TiApplication: \tat java.lang.reflect.Method.invokeNative(Native Method)\r\n[ERROR] TiApplication: \tat java.lang.reflect.Method.invoke(Method.java:525)\r\n[ERROR] TiApplication: \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)\r\n[ERROR] TiApplication: \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)\r\n[ERROR] TiApplication: \tat dalvik.system.NativeStart.main(Native Method)\r\n[ERROR] TiApplication: Caused by: java.lang.ClassCastException: java.util.HashMap cannot be cast to org.appcelerator.titanium.proxy.TiViewProxy\r\n[ERROR] TiApplication: \tat org.appcelerator.titanium.proxy.TiViewProxy.setActivity(TiViewProxy.java:976)\r\n[ERROR] TiApplication: \tat org.appcelerator.titanium.proxy.TiViewProxy.setActivity(TiViewProxy.java:977)\r\n[ERROR] TiApplication: \tat ti.modules.titanium.ui.WindowProxy.windowCreated(WindowProxy.java:175)\r\n[ERROR] TiApplication: \tat org.appcelerator.titanium.TiActivityWindows.windowCreated(TiActivityWindows.java:32)\r\n[ERROR] TiApplication: \tat org.appcelerator.titanium.TiBaseActivity.windowCreated(TiBaseActivity.java:442)\r\n[ERROR] TiApplication: \tat org.appcelerator.titanium.TiBaseActivity.onCreate(TiBaseActivity.java:524)\r\n[ERROR] TiApplication: \tat org.appcelerator.titanium.TiActivity.onCreate(TiActivity.java:18)\r\n[ERROR] TiApplication: \tat android.app.Activity.performCreate(Activity.java:5133)\r\n[ERROR] TiApplication: \tat android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)\r\n[ERROR] TiApplication: \tat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)\r\n[ERROR] TiApplication: \t... 11 more\r\n\r\n{code}",
"attachment": [],
"flagged": false,
"summary": "Nested require with createController getView call causes crash on android",
"creator": {
"name": "sschueller",
"key": "sschueller",
"displayName": "Stefan Schüller",
"active": true,
"timeZone": "Europe/Berlin"
},
"subtasks": [],
"reporter": {
"name": "sschueller",
"key": "sschueller",
"displayName": "Stefan Schüller",
"active": true,
"timeZone": "Europe/Berlin"
},
"environment": "SDK 3.4.1,\r\nAndroid 4.4.3 (API 18) - Genymotion Samsung Galaxy S4\r\nOS X Yosemite, 10.10\r\n ",
"comment": {
"comments": [],
"maxResults": 0,
"total": 0,
"startAt": 0
}
}
}