{ "id": "163442", "key": "MOD-2299", "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": [ { "id": "18411", "name": "appcelerator.encrypteddatabase 2.0.2", "archived": false, "released": true } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2016-10-29T01:34:12.000+0000", "created": "2016-09-26T13:43:05.000+0000", "priority": { "name": "Critical", "id": "1" }, "labels": [], "versions": [ { "id": "18287", "name": "Release 5.5.0", "archived": false, "released": true, "releaseDate": "2016-09-13" } ], "issuelinks": [ { "id": "55420", "type": { "id": "10122", "name": "Gantt: start-finish", "inward": "is triggered by", "outward": "is triggering" }, "outwardIssue": { "id": "168931", "key": "MOD-2348", "fields": { "summary": "iOS: Encrypted Database upgrade-error when using Ti.Database", "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": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2018-08-06T17:49:31.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": "13609", "name": "Encrypted SQLite DB" } ], "description": "h5.Reproduce:\r\n1. Create a simple app, and add following code.\r\n{code}\r\nvar EncryptedDatabase = require('appcelerator.encrypteddatabase');\r\n\r\n// Set Password\r\nEncryptedDatabase.setPassword('testisamspassword');\r\n\r\n// Open DB\r\nEncryptedDatabase.open('test');\r\n{code}\r\n2. Run the app to a iOS 10 device. \r\n3. Then run the app to a iOS 9 device.\r\n\r\nh5. Expect Result\r\nIt should work well on both device.\r\n\r\nh5.Actual Result\r\n1.When running on the iOS 10 device, it works well.\r\n2.When running on the iOS 9 device, the app will be crashed by the following error log\r\n{code}\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : [INFO] iSAMS-Testing/1.0 (5.5.0.44a2e3f)\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : [DEBUG] Loading: /var/containers/Bundle/Application/F8DC6717-12AF-4C3E-B5C2-CF3C4BFCFD69/iSAMS-Testing.app/app.js, Resource: app_js\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : [DEBUG] Loading: /var/containers/Bundle/Application/F8DC6717-12AF-4C3E-B5C2-CF3C4BFCFD69/iSAMS-Testing.app/_app_props_.json, Resource: _app_props__json\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : [ERROR] db error\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : [DEBUG] Loading: /var/containers/Bundle/Application/F8DC6717-12AF-4C3E-B5C2-CF3C4BFCFD69/iSAMS-Testing.app/appcelerator.encrypteddatabase.js, Resource: appcelerator_encrypteddatabase_js\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : dyld: lazy symbol binding failed: Symbol not found: _sqlite3_key\r\nReferenced from: /var/containers/Bundle/Application/F8DC6717-12AF-4C3E-B5C2-CF3C4BFCFD69/iSAMS-Testing.app/iSAMS-Testing\r\nExpected in: dyld shared cache\r\nSep 26 12:35:29 Alastairs-iPad iSAMS-Testing[510] : dyld: Symbol not found: _sqlite3_key\r\nReferenced from: /var/containers/Bundle/Application/F8DC6717-12AF-4C3E-B5C2-CF3C4BFCFD69/iSAMS-Testing.app/iSAMS-Testing\r\nExpected in: dyld shared cache\r\n{code}\r\n", "attachment": [ { "id": "60523", "filename": "project-broken.pbxproj", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-10-14T08:18:09.000+0000", "size": 284783, "mimeType": "application/octet-stream" }, { "id": "60524", "filename": "project-fixed.pbxproj", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-10-14T08:18:09.000+0000", "size": 284783, "mimeType": "application/octet-stream" }, { "id": "60522", "filename": "screenshot.mov", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-10-14T08:18:19.000+0000", "size": 2243146, "mimeType": "video/quicktime" } ], "flagged": false, "summary": "Encrypted Database: Crashed on iOS 9 Devices after using SDK 5.5.0.GA", "creator": { "name": "sliang", "key": "sliang", "displayName": "Shuo Liang", "active": true, "timeZone": "Asia/Harbin" }, "subtasks": [], "reporter": { "name": "sliang", "key": "sliang", "displayName": "Shuo Liang", "active": true, "timeZone": "Asia/Harbin" }, "environment": "SDK 5.5.0\r\nDatabase Module latest with 5.5.0.GA", "closedSprints": [ { "id": 741, "state": "closed", "name": "2016 Sprint 22 SDK", "startDate": "2016-10-22T00:02:29.945Z", "endDate": "2016-11-05T00:02:00.000Z", "completeDate": "2016-11-07T04:38:58.335Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "397237", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "Related issue: http://stackoverflow.com/questions/22512614/sqlite3-key-symbols-not-found-for-architecture-i386\r\n\r\n*EDIT*: The problem might be an architecture-issue here:\r\n!https://abload.de/img/bildschirmfoto2016-09hdsfk.png!\r\n\r\nSo we need to change the value to {{$(ARCHS_STANDARD)}}. Although that still not completely explains why it works on iOS 10 but not iOS 9. Maybe different devices? It would be good to know the exact devices (model and iOS version) to verify my thought. Thx! \r\n\r\nAnd I currently cannot build the module, so [~cng] might need to help building.", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2016-09-26T14:21:11.000+0000", "updated": "2016-09-26T14:44:07.000+0000" }, { "id": "398975", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "[~cng] Based on the code (https://github.com/appcelerator/node-appc/blob/master/lib/timodule.js#L238), it appears the order in the tiapp.xml dictates the order the modules are added to the Xcode project.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2016-10-14T14:16:40.000+0000", "updated": "2016-10-14T14:16:40.000+0000" }, { "id": "399002", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "TODO: Currently, the {{hooks}} directory does not get copied over to the zipped module, so I needed to copy it there manually. [~cbarber] may know where to place it, please see the PR for details.\r\n\r\n*PR* (master): https://github.com/appcelerator-modules/appcelerator.encrypteddatabase/pull/16\r\n*PR* (1_3_X): https://github.com/appcelerator-modules/appcelerator.encrypteddatabase/pull/17\r\n\r\n*Test-Case*:\r\n{code:javascript}\r\nvar EncryptedDatabase = require('appcelerator.encrypteddatabase');\r\n \r\n// Set Password\r\nEncryptedDatabase.setPassword('testisamspassword');\r\n \r\n// Open DB\r\nEncryptedDatabase.open('test');\r\n{code}\r\n\r\n*Side-note*:\r\nUnfortunately, I have no iOS 9 device in here Germany, so I could not actually test the change. But I can ensure that the {{sqlite3.dylib}} gets moved below the {{libappcelerator.encrypteddatabase.a}}, so it doesn't conflict. Thanks!", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2016-10-14T20:58:19.000+0000", "updated": "2016-10-15T09:29:47.000+0000" }, { "id": "400060", "author": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "body": "APPROVED!", "updateAuthor": { "name": "cng", "key": "cng", "displayName": "Chee Kiat Ng", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2016-10-29T01:33:59.000+0000", "updated": "2016-10-29T01:33:59.000+0000" }, { "id": "440201", "author": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Cleaning up older fixed issues. If this issue should not have been closed as fixed, please reopen.", "updateAuthor": { "name": "emerriman", "key": "emerriman", "displayName": "Eric Merriman ", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2018-08-06T17:49:31.000+0000", "updated": "2018-08-06T17:49:31.000+0000" } ], "maxResults": 22, "total": 22, "startAt": 0 } } }