{ "id": "169908", "key": "MOD-2363", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10034", "key": "MOD", "name": "Appcelerator Modules", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2017-11-14T21:58:30.000+0000", "created": "2017-09-26T18:25:47.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2017-11-14T21:58:30.000+0000", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "14565", "name": "TouchID" } ], "description": "- ti.touchid can sometimes decode decrypted data incorrectly\r\n\r\n*TEST CASE*\r\n{code:js}\r\nvar TouchID = require('ti.touchid');\r\n keychainItem = TouchID.createKeychainItem({\r\n identifier: 'test_key',\r\n accessControlMode: TouchID.ACCESS_CONTROL_TOUCH_ID_ANY // remove this to save without fingerprint authentication\r\n }),\r\n win = Ti.UI.createWindow({backgroundColor: 'white', layout: 'vertical'});\r\n queue = [],\r\n callback = function(e) {\r\n if (queue.length) {\r\n queue.shift().close();\r\n }\r\n alert(JSON.stringify(e, null, 1));\r\n };\r\n\r\nkeychainItem.addEventListener('save', callback);\r\nkeychainItem.addEventListener('read', callback);\r\nkeychainItem.addEventListener('reset', callback);\r\nkeychainItem.addEventListener('update', callback);\r\n\r\nbutton('SAVE', function() {\r\n showFingerprint();\r\n keychainItem.save('86c8153c-6d2c-421a-8e79-eae8ad0831ba');\r\n});\r\nbutton('READ', function() {\r\n showFingerprint();\r\n keychainItem.read();\r\n});\r\nbutton('RESET', function() {\r\n showFingerprint();\r\n keychainItem.reset();\r\n});\r\nbutton('UPDATE', function() {\r\n showFingerprint();\r\n keychainItem.update('test_update');\r\n});\r\n\r\nwin.open();\r\n\r\nfunction showFingerprint() {\r\n if (keychainItem.accessControlMode !== TouchID.ACCESS_CONTROL_TOUCH_ID_ANY) return;\r\n var win = Ti.UI.createWindow({backgroundColor: 'white'}),\r\n img = Ti.UI.createImageView({image: 'http://bit.ly/2ur2X4u', width: 64, height: 64});\r\n queue.push(win);\r\n win.add(img);\r\n win.open();\r\n}\r\nfunction button(title, click) {\r\n var btn = Ti.UI.createButton({title: title, width: Ti.UI.FILL});\r\n btn.addEventListener('click', click);\r\n win.add(btn);\r\n}\r\n{code}\r\n- SAVE and then READ data\r\n- READ callback should return the full string {{86c8153c-6d2c-421a-8e79-eae8ad0831ba}}", "attachment": [], "flagged": false, "summary": "Android: ti.touchid does not decode Keychain data correctly", "creator": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "closedSprints": [ { "id": 963, "state": "closed", "name": "2017 Sprint 22 SDK", "startDate": "2017-10-22T21:43:59.523Z", "endDate": "2017-11-05T22:43:00.000Z", "completeDate": "2017-11-06T16:33:42.425Z", "originBoardId": 114 }, { "id": 951, "state": "closed", "name": "2017 Sprint 20 SDK", "startDate": "2017-09-24T17:50:18.277Z", "endDate": "2017-10-08T17:50:00.000Z", "completeDate": "2017-10-09T20:38:07.840Z", "originBoardId": 114 }, { "id": 968, "state": "closed", "name": "2017 Sprint 23 SDK", "startDate": "2017-11-05T16:37:25.071Z", "endDate": "2017-11-19T16:37:00.000Z", "completeDate": "2017-11-20T18:57:56.565Z", "originBoardId": 114 }, { "id": 959, "state": "closed", "name": "2017 Sprint 21 SDK", "startDate": "2017-10-08T20:38:15.130Z", "endDate": "2017-10-22T20:38:00.000Z", "completeDate": "2017-10-24T23:55:56.605Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "428489", "author": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "body": "ti.touchid: https://github.com/appcelerator-modules/ti.touchid/pull/35", "updateAuthor": { "name": "gmathews", "key": "gmathews", "displayName": "Gary Mathews", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2017-09-26T18:30:40.000+0000", "updated": "2017-09-26T18:30:40.000+0000" } ], "maxResults": 1, "total": 1, "startAt": 0 } } }