{ "id": "150725", "key": "TIMOB-19412", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "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": "16925", "description": "WatchKit Support--all going into 5.0 now", "name": "Release 5.0.0", "archived": true, "released": true, "releaseDate": "2015-09-16" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2015-08-31T20:20:29.000+0000", "created": "2015-08-26T12:47:01.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "watchOS2" ], "versions": [ { "id": "16925", "description": "WatchKit Support--all going into 5.0 now", "name": "Release 5.0.0", "archived": true, "released": true, "releaseDate": "2015-09-16" } ], "issuelinks": [], "assignee": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2017-03-16T22:45:33.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": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "Out of the box the WatchOS2 template does not connect with the Titanium app it is bundled with.\r\n\r\nThe storyboard should have some buttons and the {{InterfaceController.m}} and {{.h}} some basic code to demonstrate how to import and use {{WatchConnectivity/WatchConnectivity.h}}.\r\n\r\nCurrent template InterfaceController:\r\nhttps://github.com/appcelerator/titanium_mobile/blob/master/templates/applewatch/watchos2/template/%7B%7BExtName%7D%7D%20WatchApp%20Extension/InterfaceController.m.ejs\r\n\r\nKiat's sample app with basic UI and logic:\r\nhttps://github.com/cheekiatng/Titanium-WatchOS2-Sample-App/blob/master/extensions/SGDemoWatchOS2/SGDemoWatchOS2%20WatchApp%20Extension/InterfaceController.m", "attachment": [], "flagged": false, "summary": "WatchOS2 template should demonstrate use of WatchConnectivity", "creator": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "subtasks": [], "reporter": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "environment": "ti sdk select 5.0.0.v20150825212831", "closedSprints": [ { "id": 481, "state": "closed", "name": "2015 Sprint 18 SDK", "startDate": "2015-08-29T00:30:25.440Z", "endDate": "2015-09-12T00:30:00.000Z", "completeDate": "2015-09-14T05:24:05.135Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "361278", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Can't we just do this via the docs?", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-08-26T17:02:31.000+0000", "updated": "2015-08-26T17:02:31.000+0000" }, { "id": "361387", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "It's just a few lines and improves the dev experience. At least import the header and start the session so that when they add the watchsession code in the app it can find the watch app.", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-27T08:10:40.000+0000", "updated": "2015-08-27T08:10:40.000+0000" }, { "id": "361419", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Submit a PR and assign me as the reviewer and it'll get merged.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2015-08-27T13:07:42.000+0000", "updated": "2015-08-27T13:07:42.000+0000" }, { "id": "361422", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "[~cng] The [5.0 sample app|https://github.com/appcelerator-developer-relations/appc-sample-ti500] based on yours is still in progress and since my Obj-C is not fluent, would you be able to do a PR for this?", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-27T14:04:32.000+0000", "updated": "2015-08-27T14:04:32.000+0000" }, { "id": "361522", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Ok. I was trying to get complication working as an example though. But i'll just submit a PR of the first version first.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-08-27T23:05:52.000+0000", "updated": "2015-08-27T23:05:52.000+0000" }, { "id": "361564", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Complications? O yes please: https://github.com/appcelerator-developer-relations/appc-sample-ti500/blob/master/README.md#todo ;)", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-28T07:42:34.000+0000", "updated": "2015-08-28T07:42:34.000+0000" }, { "id": "361595", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "[~fokkezb] are complications yet implemented? I will work on this ticket on monday as discussed with [~cng] ", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-08-28T17:26:31.000+0000", "updated": "2015-08-28T17:26:31.000+0000" }, { "id": "361597", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "The WatchSession part of 5.0 sample is done, except for complications. You can maybe use some of it for the template: https://github.com/appcelerator-developer-relations/appc-sample-ti500", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-28T18:07:50.000+0000", "updated": "2015-08-28T18:07:50.000+0000" }, { "id": "361681", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Pending PR (reflecting the code used in [~cng]'s demo): https://github.com/appcelerator/titanium_mobile/pull/7093", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2015-08-30T23:46:34.000+0000", "updated": "2015-08-30T23:46:34.000+0000" }, { "id": "361682", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "I was thinking if we should also implement a default code sample in the titanium app as well, otherwise the code in the Xcode extension project is meaningless. And also whether to have an option flag for developers to either choose empty project or with this sample code. [~cbarber], [~ingo], [~fokkezb], thoughts?", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-08-31T01:25:35.000+0000", "updated": "2015-08-31T01:25:35.000+0000" }, { "id": "361685", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Bleh. Just realised that it's not that straight forward, because in studio, we are generating the ti watch Xcode project at the tiapp.xml GUI when we press 'enable watch'. That implies that there's already the default alloy template implemented on the titanium app. Have to think through this a bit.", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-08-31T03:03:10.000+0000", "updated": "2015-08-31T03:03:10.000+0000" }, { "id": "361709", "author": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "body": "Apart from generating a {{watch}} controller (if that doesn't already exist) with the sample code I don't see good way to also generate Titanium app sample code. But since our users are JS devs and its the Obj-C part they will need guidance with most, I think it's OK to only have that part in the template. Then at least as soon as you use an API in the Titanium app, the Watch app will respond out of the box.\r\n\r\nUpdated PR based on https://github.com/appcelerator-developer-relations/appc-sample-ti500/tree/master/extensions/appc-sample-ti500\r\n\r\nhttps://github.com/appcelerator/titanium_mobile/pull/7095", "updateAuthor": { "name": "fokkezb", "key": "fokke", "displayName": "Fokke Zandbergen", "active": true, "timeZone": "Europe/Amsterdam" }, "created": "2015-08-31T07:13:04.000+0000", "updated": "2015-08-31T07:13:04.000+0000" }, { "id": "361718", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "[~cbarber], can you review and see if we can get this out with 5.0.0? Thanks [~fokkezb]!", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2015-08-31T08:08:32.000+0000", "updated": "2015-08-31T08:08:32.000+0000" }, { "id": "413419", "author": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Closing ticket as fixed.", "updateAuthor": { "name": "lmorris", "key": "lmorris", "displayName": "Lee Morris", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2017-03-16T22:45:33.000+0000", "updated": "2017-03-16T22:45:33.000+0000" } ], "maxResults": 14, "total": 14, "startAt": 0 } } }