{ "id": "172574", "key": "TIMOB-26530", "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": null, "resolutiondate": null, "created": "2018-11-07T19:39:05.000+0000", "priority": { "name": "None", "id": "6" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2018-11-07T19:39:32.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": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "This is an odd one seen on our unit tests after we upgraded to macOS Mojave. The unit test app's Ti.Media.VideoPlayer tests would pop up prompts for microphone permissions, specifically for the tests that actually played a video.\r\n\r\nI can reproduce locally, but once the prompt appears I have to choose to approve or deny, and then after that I cannot reproduce. When it did appear, I passed the debugger in Xcode and it pointed at this code:\r\nhttps://github.com/appcelerator/titanium_mobile/blob/master/iphone/Classes/TiMediaVideoPlayerProxy.m#L969\r\n\r\nThe test case is:\r\n{code:javascript}\r\nvar win = Ti.UI.createWindow({\r\n\tbackgroundColor: 'white'\r\n});\r\nvar nav = Ti.UI.iOS.createNavigationWindow({\r\n\twindow: win\r\n});\r\n\r\nwin.addEventListener('focus', openWindow);\r\n\r\nnav.open();\r\n\r\nfunction openWindow() {\r\n\tvar detailWindow,\r\n\t\tvideoPlayer;\r\n\twin.removeEventListener('focus', openWindow);\r\n\tdetailWindow = Ti.UI.createWindow({\r\n\t\tbackgroundColor: 'black'\r\n\t});\r\n\r\n\tvideoPlayer = Ti.Media.createVideoPlayer({\r\n\t\turl: 'https://www.w3schools.com/html/mov_bbb.mp4',\r\n\t\tautoplay: true,\r\n\t\tbackgroundColor: 'blue',\r\n\t\theight: 300,\r\n\t\twidth: 300,\r\n\t\tmediaControlStyle: Ti.Media.VIDEO_CONTROL_NONE,\r\n\t\tscalingMode: Ti.Media.VIDEO_SCALING_ASPECT_FILL,\r\n\t\trepeatMode: Ti.Media.VIDEO_REPEAT_MODE_ONE,\r\n\t\tshowsControls: false\r\n\t});\r\n\r\n\tdetailWindow.addEventListener('open', function () {\r\n\t\tsetTimeout(function () {\r\n\t\t\tdetailWindow.close();\r\n\t\t}, 2000);\r\n\t});\r\n\r\n\tdetailWindow.addEventListener('close', function () {\r\n\t\tsetTimeout(function () {\r\n\t\t\tnav.close();\r\n\t\t\tTi.API.info('DONE!!!');\r\n\t\t}, 2000);\r\n\t});\r\n\r\n\tdetailWindow.add(videoPlayer);\r\n\tnav.openWindow(detailWindow);\r\n}\r\n{code}", "attachment": [], "flagged": false, "summary": "iOS: App requests microphone permissions when playing video on macOS Mojave iOS 12 Simulator", "creator": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "environment": null, "comment": { "comments": [ { "id": "443375", "author": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "body": "Note the similar issue mentioned here: https://github.com/insidegui/WWDC/issues/445", "updateAuthor": { "name": "cwilliams", "key": "cwilliams", "displayName": "Christopher Williams", "active": true, "timeZone": "America/New_York" }, "created": "2018-11-07T19:39:32.000+0000", "updated": "2018-11-07T19:39:32.000+0000" } ], "maxResults": 1, "total": 1, "startAt": 0 } } }