{ "id": "94334", "key": "TIMOB-9863", "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": [], "resolution": { "id": "10100", "description": "This issue won't be actioned.", "name": "Won't Do" }, "resolutiondate": "2020-02-19T13:48:14.000+0000", "created": "2012-07-02T17:14:14.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "core" ], "versions": [ { "id": "13271", "description": "Release 2.1.0", "name": "Release 2.1.0", "archived": false, "released": true, "releaseDate": "2012-06-29" } ], "issuelinks": [ { "id": "18265", "type": { "id": "10001", "name": "Cloners", "inward": "is cloned into", "outward": "is cloned from" }, "outwardIssue": { "id": "92891", "key": "TIMOB-9416", "fields": { "summary": "Android: Can't create a custom url for the app ", "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": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "topener", "key": "topener", "displayName": "Rene Pot", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2020-02-19T13:48:14.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": "h4. Problem Description \r\nCustomer wants to registrate his own url in android, so he can open the app with something like this://is.sparta from the browser in android. We got a really nice recipe on this, but it's not working anymore. \r\n\r\nh4. Actual Results\r\nThe custom url is not registered.\r\n\r\nh4. Expected Results\r\nThe custom url should work nice.\r\n\r\nh4. Test case:\r\n1. Create mobile project.\r\n2. Add this to the app.js:\r\n{code}\r\nvar win = Ti.UI.createWindow({ backgroundColor: '#fff' });\r\nwin.add(Ti.UI.createLabel({ text: 'Type http://www.appcelerator.com in a browser, and this app will get launched. Try it!' }));\r\nwin.open();\r\n{code}\r\n3. Add this to launchFromURL.js:\r\n{code}\r\nvar activity = Ti.Android.currentActivity;\r\nvar win = Ti.UI.currentWindow;\r\n\r\nactivity.addEventListener(\"create\", function(e) {\r\n win.add(Ti.UI.createButton({title: 'Our app was launched when you typed http://www.appcelerator.com!'}));\r\n});\r\n{code}\r\n4. Add this to the tiapp.xml\r\n{code}\r\n \r\n \t \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\r\nh4. Extra info\r\nPart of our research was:\r\n\r\nGeneric for Android: http://stackoverflow.com/questions/3469908/make-a-link-in-the-android-browser-start-up-my-app/3472228\r\n\r\nFrom Dawson: https://gist.github.com/840600\r\n\r\n", "attachment": [], "flagged": false, "summary": "Android: Custom url doesn't open the app on 3.x+ devices", "creator": { "name": "mpmiranda", "key": "mpmiranda", "displayName": "Mauro Parra-Miranda", "active": true, "timeZone": "America/Mexico_City" }, "subtasks": [], "reporter": { "name": "ayeung", "key": "ayeung", "displayName": "Allen Yeung", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Titanium SDK version: 2.0.1GA2\r\nJavascript Engine: V8 \r\nPlatform & version: Android 2.3, 3.2 \r\nDevice Details: Android emulator and Acer Iconia A500 \r\nHost Operating System: OSX 10.7.3 \r\nTitanium Studio version: 2.0.2", "comment": { "comments": [ { "id": "213236", "author": { "name": "tsmolich", "key": "tsmolich", "displayName": "Tamila Smolich", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The same behavior exists on Android versions 3.X and 4.X, but works well on 2.X.\r\n\r\nTested on:\r\nTitanium Studio, build: 2.1.1.201207271312\r\nTitanium SDK, build: 2.0.3.v20120806151610\r\nDevices: Nexus 7 (4.1), Sony Tablet S (3.2)\r\nHost OS: Mac OS X Mountain Lion 10.8; Mac OS X Lion 10.7.3", "updateAuthor": { "name": "tsmolich", "key": "tsmolich", "displayName": "Tamila Smolich", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-07T15:34:52.000+0000", "updated": "2012-08-07T15:48:52.000+0000" }, { "id": "267833", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Changing the {{tiapp.xml}} code to point it to {{app.js}} instead of a separate file works, but has the nasty side-effect of launching the intent in the context of the browser where you click the link. This can be fixed by adding {{android:launchMode=\"singleTask\"}} to {{}}.\r\n\r\nThis does cause my app to crash every now and then and I have no idea why. Investigating...\r\n\r\n{code}\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}", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2013-08-23T14:51:59.000+0000", "updated": "2013-08-23T14:54:32.000+0000" }, { "id": "267837", "author": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "body": "(admittedly a slightly different use case) The following works to define a custom URL scheme instead of overriding http. It's from the training lab example:\n\n{code}\n\n \n \n \n \n \n \n \n \n \n \n\n{code}\n\nSee https://github.com/appcelerator-training/tce_training/tree/master/labcode/Finished_code/URLSchemes\n\nIn my testing, the app would not launch if I used a single tag; it has to be written as shown to work.", "updateAuthor": { "name": "skypanther", "key": "skypanther", "displayName": "Tim Poulsen", "active": true, "timeZone": "America/New_York" }, "created": "2013-08-23T15:12:41.000+0000", "updated": "2013-08-23T15:12:41.000+0000" }, { "id": "267874", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "(removed)", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2013-08-23T18:01:33.000+0000", "updated": "2013-08-26T07:01:20.000+0000" }, { "id": "303189", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Unfortunately out of time for 3.3.0. Bumping to 3.3.1.", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-05-01T17:31:29.000+0000", "updated": "2014-05-01T17:31:29.000+0000" }, { "id": "318730", "author": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "body": "3.4.0 is moved forward, and 3.5.0 is taking its place in the calendar.", "updateAuthor": { "name": "ingo", "key": "ingo", "displayName": "Ingo Muschenetz", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2014-08-14T21:31:52.000+0000", "updated": "2014-08-14T21:31:52.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }