{ "id": "175643", "key": "TIMOB-28194", "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": "7", "description": "", "name": "Invalid" }, "resolutiondate": "2021-02-25T21:50:29.000+0000", "created": "2020-10-14T14:16:57.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "21052", "description": "", "name": "Release 9.3.0", "archived": false, "released": true, "releaseDate": "2020-12-14" }, { "id": "21092", "name": "Release 9.2.1", "archived": false, "released": true, "releaseDate": "2020-10-06" } ], "issuelinks": [], "assignee": null, "updated": "2021-02-25T21:50:29.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": "Due to TIMOB-28190, we are exploring custom camera overlays to take pictures manually. While that works great on iOS, we noticed the following issue on Android:\r\n\r\nWe created an overlay that takes a pictures and previews it on-screen. After selecting the \"Use\" button, it calls {{Ti.Media.hideCamera()}} and returns everything correctly. But if we add a \"Retake\" button that clears the taken image and shows the camera again, calling {{Ti.Media.takePicture()}} does not call the \"success\" event of the {{Ti.Media.showCamera}} API again. The issue is likely caused by the \"TiCameraActivity\" guard {{takingPicture}} which probably is not reset correctly. Unfortunately, there is no way to workaround that, since the guard is set natively.\r\n\r\nAn always-to-reproduce test case can be taken from our app (branch: fix/camera-view)", "attachment": [], "flagged": false, "summary": "Android: After calling Ti.Media.takePicture() once, it doesn't return a result again", "creator": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "comment": { "comments": [ { "id": "457248", "author": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I assume these are the steps to reproduce?\r\n# Tap on the \"Chat\" tab.\r\n# Tap on a conversation row.\r\n# Tap the \"+\" button and select \"Camera\" from dialog.\r\n# Tap the \"Cancel\" button in the camera preview window.\r\n# Tap the \"+\" button and select \"Camera\" from dialog.\r\n# Tap on the capture button.\r\n# Notice capture button spins forever. Success callback never invoked.\r\n\r\nI was able to reproduce this in Titanium 9.2.0.\r\n\r\nI've also confirmed that Titanium 9.3.0 has already fixed it via the following PR. We've made several other fixes/improvements to the camera overlay activity that you'll probably want.\r\nhttps://github.com/appcelerator/titanium_mobile/pull/12143\r\n", "updateAuthor": { "name": "jquick", "key": "jquick", "displayName": "Joshua Quick", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2020-10-14T19:51:00.000+0000", "updated": "2020-10-14T19:51:00.000+0000" }, { "id": "457249", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Thanks Josh, thats good to hear! We went with removing the photo confirmation to upload the photo immediately, but will add the confirmation step again, once we update to 9.3.0. This can probably be closed then!", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2020-10-14T20:56:10.000+0000", "updated": "2020-10-14T20:56:10.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }