{ "id": "85267", "key": "TIMOB-7326", "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": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" }, { "id": "13170", "name": "Sprint 2012-06", "archived": true, "released": true, "releaseDate": "2012-03-25" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-07-06T05:42:07.000+0000", "created": "2012-01-20T15:27:00.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "module_map", "qe-testadded" ], "versions": [ { "id": "11331", "description": "", "name": "Release 1.8.0", "archived": true, "released": true, "releaseDate": "2011-10-31" }, { "id": "12580", "description": "Dual Runtime 1.8.0", "name": "Release 1.8.0.1", "archived": true, "released": true, "releaseDate": "2011-12-22" }, { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" } ], "issuelinks": [ { "id": "15783", "type": { "id": "10002", "name": "Duplicate", "inward": "is duplicated by", "outward": "duplicates" }, "inwardIssue": { "id": "86307", "key": "TIMOB-7610", "fields": { "summary": "Android: MapView crashes when annotation has ordinary view as rightView property", "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 } } } } ], "assignee": { "name": "opiecyrus", "key": "opiecyrus", "displayName": "Opie Cyrus", "active": true, "timeZone": "America/Chicago" }, "updated": "2012-07-06T16:27:42.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": "h3. Actual behavior\r\nAdding a view object to a rightview or leftview property on an annotation, crash the app\r\n\r\nh3. Expected behavior\r\nAdding a view object to a rightview or leftview and when the annotation gets touched, show the info with the view as on iOS\r\n\r\nh3. Steps to reproduce the issue\r\n1. Push the annotation button\r\n2. Click on the annotation\r\n3. Crash\r\n\r\nh3. Code\r\n\r\n{code:title=app.js|borderStyle=solid}\r\n//Android Annotation rightView Bug Android Isolation\r\nvar win = Ti.UI.createWindow({\r\n\t\ttitle : 'Annotations'\r\n});\r\nvar backButton= Ti.UI.createButton({\r\n\t\ttitle : 'Add Annotation',\r\n\t\tbottom : '5dp',\r\n\t\tcolor : 'black',\r\n\t\twidth : '150',\r\n\t\theight : '60',\r\n\t\tbottom:'50'\r\n});\r\n\r\n\r\nvar myMap = Titanium.Map.createView({\r\n\t\tmapType : Titanium.Map.STANDARD_TYPE,\r\n\t\tregion : {latitude: 37, longitude: -97,\r\n\t\t\t\t latitueDelta: 10, longitudeDelta: 10},\r\n\t\tanimate : true,\r\n\t\tregionFit : true,\r\n\t\tuserLocation : false,\r\n});\r\n\r\nwin.add(myMap);\r\nwin.add(backButton);\r\n\r\nbackButton.addEventListener('click', function(){\r\n\t\tvar view1 = Ti.UI.createView({\r\n\t\t\twidth : 'auto'\r\n\t\t});\r\n\t\tvar myLbl = Ti.UI.createLabel({\r\n\t\t\ttext : 'Status: In Service' + '\\n' +\r\n\t\t\t\t\t'Truck Type: Flat Bed' + '\\n' +\r\n\t\t\t\t\t'Speed: 40mph E',\r\n\t\t\theight : 'auto',\r\n\t\t\twidth : 'auto',\r\n\t\t\tcolor : 'white',\r\n\t\t\tfont : {fontSize : '9dp'}\r\n\t\t});\r\n\t\t\r\n\t\tview1.add(myLbl);\r\n\t\t\r\n\t\tvar myAnnotation = Ti.Map.createAnnotation({\r\n\t\t\tlatitude : 37.422502,\r\n\t\t\tlongitude : -122.08554998,\r\n\t\t\ttitle : 'Google HQ ',\r\n\t\t\tsubtitle : 'sdfsda',\r\n\t\t\tanimate : true,\r\n\t\t\tpincolor : Ti.Map.ANNOTATION_RED,\r\n\t\t\trightView:view1\r\n\t\t});\r\n\t\t//myAnnotation.rightView = view1;\r\n\t\tmyMap.addAnnotation(myAnnotation);\r\n});\r\nwin.open();\r\n{code}\r\n{code:title=crash log|borderStyle=solid}\r\nD/AndroidRuntime( 599): Shutting down VM\r\nW/dalvikvm( 599): threadid=1: thread exiting with uncaught exception (group=0x40015560)\r\nE/TiApplication( 599): (main) [6845,6845] Sending event: exception on thread: main msg:java.lang.NullPointerException; Titanium 1.9.0,2012/01/18 11:01,1e434e2\r\nE/TiApplication( 599): java.lang.NullPointerException\r\nE/TiApplication( 599): \tat ti.modules.titanium.map.TiOverlayItemView.setItem(TiOverlayItemView.java:189)\r\nE/TiApplication( 599): \tat ti.modules.titanium.map.TiMapView.showAnnotation(TiMapView.java:476)\r\nE/TiApplication( 599): \tat ti.modules.titanium.map.TiMapView.onTap(TiMapView.java:512)\r\nE/TiApplication( 599): \tat ti.modules.titanium.map.TiMapView$TitaniumOverlay.onTap(TiMapView.java:279)\r\nE/TiApplication( 599): \tat com.google.android.maps.ItemizedOverlay.onTap(ItemizedOverlay.java:453)\r\nE/TiApplication( 599): \tat com.google.android.maps.OverlayBundle.onTap(OverlayBundle.java:83)\r\nE/TiApplication( 599): \tat com.google.android.maps.MapView$1.onSingleTapUp(MapView.java:356)\r\nE/TiApplication( 599): \tat com.google.android.maps.GestureDetector.onTouchEvent(GestureDetector.java:533)\r\nE/TiApplication( 599): \tat com.google.android.maps.MapView.onTouchEvent(MapView.java:683)\r\nE/TiApplication( 599): \tat android.view.View.dispatchTouchEvent(View.java:3885)\r\nE/TiApplication( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:903)\r\nE/TiApplication( 599): \tat ti.modules.titanium.map.TiMapView$LocalMapView.dispatchTouchEvent(TiMapView.java:126)\r\nE/TiApplication( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/TiApplication( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/TiApplication( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/TiApplication( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/TiApplication( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/TiApplication( 599): \tat com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1691)\r\nE/TiApplication( 599): \tat com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)\r\nE/TiApplication( 599): \tat android.app.Activity.dispatchTouchEvent(Activity.java:2096)\r\nE/TiApplication( 599): \tat com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1675)\r\nE/TiApplication( 599): \tat android.view.ViewRoot.deliverPointerEvent(ViewRoot.java:2194)\r\nE/TiApplication( 599): \tat android.view.ViewRoot.handleMessage(ViewRoot.java:1878)\r\nE/TiApplication( 599): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\nE/TiApplication( 599): \tat android.os.Looper.loop(Looper.java:130)\r\nE/TiApplication( 599): \tat android.app.ActivityThread.main(ActivityThread.java:3683)\r\nE/TiApplication( 599): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\nE/TiApplication( 599): \tat java.lang.reflect.Method.invoke(Method.java:507)\r\nE/TiApplication( 599): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)\r\nE/TiApplication( 599): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)\r\nE/TiApplication( 599): \tat dalvik.system.NativeStart.main(Native Method)\r\nE/AndroidRuntime( 599): FATAL EXCEPTION: main\r\nE/AndroidRuntime( 599): java.lang.NullPointerException\r\nE/AndroidRuntime( 599): \tat ti.modules.titanium.map.TiOverlayItemView.setItem(TiOverlayItemView.java:189)\r\nE/AndroidRuntime( 599): \tat ti.modules.titanium.map.TiMapView.showAnnotation(TiMapView.java:476)\r\nE/AndroidRuntime( 599): \tat ti.modules.titanium.map.TiMapView.onTap(TiMapView.java:512)\r\nE/AndroidRuntime( 599): \tat ti.modules.titanium.map.TiMapView$TitaniumOverlay.onTap(TiMapView.java:279)\r\nE/AndroidRuntime( 599): \tat com.google.android.maps.ItemizedOverlay.onTap(ItemizedOverlay.java:453)\r\nE/AndroidRuntime( 599): \tat com.google.android.maps.OverlayBundle.onTap(OverlayBundle.java:83)\r\nE/AndroidRuntime( 599): \tat com.google.android.maps.MapView$1.onSingleTapUp(MapView.java:356)\r\nE/AndroidRuntime( 599): \tat com.google.android.maps.GestureDetector.onTouchEvent(GestureDetector.java:533)\r\nE/AndroidRuntime( 599): \tat com.google.android.maps.MapView.onTouchEvent(MapView.java:683)\r\nE/AndroidRuntime( 599): \tat android.view.View.dispatchTouchEvent(View.java:3885)\r\nE/AndroidRuntime( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:903)\r\nE/AndroidRuntime( 599): \tat ti.modules.titanium.map.TiMapView$LocalMapView.dispatchTouchEvent(TiMapView.java:126)\r\nE/AndroidRuntime( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/AndroidRuntime( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/AndroidRuntime( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/AndroidRuntime( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/AndroidRuntime( 599): \tat android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:942)\r\nE/AndroidRuntime( 599): \tat com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1691)\r\nE/AndroidRuntime( 599): \tat com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1125)\r\nE/AndroidRuntime( 599): \tat android.app.Activity.dispatchTouchEvent(Activity.java:2096)\r\nE/AndroidRuntime( 599): \tat com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1675)\r\nE/AndroidRuntime( 599): \tat android.view.ViewRoot.deliverPointerEvent(ViewRoot.java:2194)\r\nE/AndroidRuntime( 599): \tat android.view.ViewRoot.handleMessage(ViewRoot.java:1878)\r\nE/AndroidRuntime( 599): \tat android.os.Handler.dispatchMessage(Handler.java:99)\r\nE/AndroidRuntime( 599): \tat android.os.Looper.loop(Looper.java:130)\r\nE/AndroidRuntime( 599): \tat android.app.ActivityThread.main(ActivityThread.java:3683)\r\nE/AndroidRuntime( 599): \tat java.lang.reflect.Method.invokeNative(Native Method)\r\nE/AndroidRuntime( 599): \tat java.lang.reflect.Method.invoke(Method.java:507)\r\nE/AndroidRuntime( 599): \tat com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)\r\nE/AndroidRuntime( 599): \tat com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)\r\nE/AndroidRuntime( 599): \tat dalvik.system.NativeStart.main(Native Method)\r\nW/ActivityManager( 62): Force finishing activity com.appcelerator.app919927/.App919927Activity\r\nD/dalvikvm( 62): GC_EXTERNAL_ALLOC freed 104K, 41% free 4953K/8327K, external 2088K/2088K, paused 92ms\r\nW/ActivityManager( 62): Activity pause timeout for HistoryRecord{406e7b50 com.appcelerator.app919927/.App919927Activity}\r\nD/dalvikvm( 394): GC_EXPLICIT freed 5K, 51% free 2718K/5511K, external 716K/1038K, paused 49ms\r\nW/ActivityManager( 62): Activity destroy timeout for HistoryRecord{406e7b50 com.appcelerator.app919927/.App919927Activity}\r\n{code}", "attachment": [], "flagged": false, "summary": "Android: rightView / leftView crash app", "creator": { "name": "rtlechuga", "key": "rtlechuga", "displayName": "Radamantis Torres-Lechuga", "active": false, "timeZone": "Asia/Dubai" }, "subtasks": [], "reporter": { "name": "rtlechuga", "key": "rtlechuga", "displayName": "Radamantis Torres-Lechuga", "active": false, "timeZone": "Asia/Dubai" }, "environment": "Titanium SDK version: 1.8.0 / 1.8.0.1 / 1.9.0\r\nPlatform OS: Android\r\nPlatform OS Version: 2.3.3\r\nDevice Details: simulator \r\nHost Operating System: OSX 10.7.2\r\nTitanium Studio Build 1.0.7.201112281340", "comment": { "comments": [ { "id": "183748", "author": { "name": "biko8", "key": "biko8", "displayName": "Victor Perez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I have the same problem, do you know the solution?", "updateAuthor": { "name": "biko8", "key": "biko8", "displayName": "Victor Perez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-20T06:13:55.000+0000", "updated": "2012-02-20T06:13:55.000+0000" }, { "id": "183752", "author": { "name": "biko8", "key": "biko8", "displayName": "Victor Perez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The solution for me is\r\n\r\n{quote}\r\nmapview.removeAnnotation(index_of_annotation);\r\n{quote}\r\n", "updateAuthor": { "name": "biko8", "key": "biko8", "displayName": "Victor Perez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-20T07:24:27.000+0000", "updated": "2012-02-20T07:24:27.000+0000" }, { "id": "183756", "author": { "name": "ssavic", "key": "ssavic", "displayName": "Sasa Savic", "active": true, "timeZone": "America/New_York" }, "body": "Victor,\r\n Issue here is not removing annotations, it's adding a rightView to annotation. In android if you do that it will crash the app once you click on the annotation rightView. I do not have workaround for this, still waiting for it to be resolved by appcelerator.\r\n", "updateAuthor": { "name": "ssavic", "key": "ssavic", "displayName": "Sasa Savic", "active": true, "timeZone": "America/New_York" }, "created": "2012-02-20T07:44:18.000+0000", "updated": "2012-02-20T07:44:18.000+0000" }, { "id": "185925", "author": { "name": "biko8", "key": "biko8", "displayName": "Victor Perez", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Try to put only left view, with one view that contains all elements.", "updateAuthor": { "name": "biko8", "key": "biko8", "displayName": "Victor Perez", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-03-12T00:04:08.000+0000", "updated": "2012-03-12T00:04:08.000+0000" }, { "id": "187147", "author": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Tested with 2.0.0.v20120319003254 rhino/v8 with Emulator 2.3.3 and iPhone Simulator 5.0", "updateAuthor": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-03-19T12:46:47.000+0000", "updated": "2012-03-19T12:46:47.000+0000" }, { "id": "201777", "author": { "name": "amittal", "key": "amittal", "displayName": "Anshu Mittal", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Reopening to update labels", "updateAuthor": { "name": "amittal", "key": "amittal", "displayName": "Anshu Mittal", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-06T04:10:26.000+0000", "updated": "2012-07-06T04:10:26.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }