{ "id": "93337", "key": "TIMOB-9580", "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": [ { "id": "13417", "description": "Sprint 2012-13 API", "name": "Sprint 2012-13 API", "archived": true, "released": true, "releaseDate": "2012-07-01" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-07-25T16:03:13.000+0000", "created": "2012-06-15T14:24:00.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "SupportTeam", "api" ], "versions": [ { "id": "13272", "description": "Release 2.0.1", "name": "Release 2.0.1", "archived": true, "released": true, "releaseDate": "2012-04-16" } ], "issuelinks": [ { "id": "27690", "type": { "id": "10122", "name": "Gantt: start-finish", "inward": "is triggered by", "outward": "is triggering" }, "outwardIssue": { "id": "111529", "key": "TIMOB-13159", "fields": { "summary": "Android: Images are blank/ have an empty entry when saved to the photo gallery", "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": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "17849", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "83169", "key": "TIMOB-6351", "fields": { "summary": " Android: saveToPhotoGallery:false does not work in android.", "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": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2013-04-11T22:03:16.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": "h3. Problem\r\n\r\nCaptured images are written to the Android device's SD card at /DCIM/Camera/. (even with saveToPhotoGallery option as false)\r\n\r\nh5. From the customer:\r\n\r\nThis is a potential security issue for us because we are capturing images of checks, which contain bank account numbers. We need a way to disable this behavior.\r\n\r\nFor our purposes it is not sufficient to delete the image after writing it to the file system. Forensics tools can still recover the data from the file system even if the file is deleted. The image can never be written to storage at all.\r\n\r\nHere is a sample app.js that reproduces the problem:\r\n\r\n{noformat}\r\n\r\nTitanium.Media.showCamera({\r\nsuccess:function(event)\r\n{\r\nalert('Success - now check SD card for captured image');\r\n},\r\ncancel:function()\r\n{\r\nalert('cancelled');\r\n},\r\nerror:function(error)\r\n{\r\nalert(error);\r\n},\r\nsaveToPhotoGallery:false,\r\nmediaTypes:[Ti.Media.MEDIA_TYPE_PHOTO]\r\n});\r\n\r\n{noformat}", "attachment": [], "flagged": false, "summary": "Android: Images captured using Ti.Media.showCamera() are written to SD card on Android", "creator": { "name": "vjoshi", "key": "vjoshi", "displayName": "Varun Joshi", "active": true, "timeZone": "America/New_York" }, "subtasks": [], "reporter": { "name": "vjoshi", "key": "vjoshi", "displayName": "Varun Joshi", "active": true, "timeZone": "America/New_York" }, "environment": "Titanium SDK: 2.0.1.GA2\r\nPlatform OS: Android 2.3.3\r\nDevice: HTC ADR6400L (Thunderbolt), Motorola Droid 4", "comment": { "comments": [ { "id": "199730", "author": { "name": "vinothbabu", "key": "vinothbabu", "displayName": "Vinothbabu", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Will this issue get fixed in the July 1st release.", "updateAuthor": { "name": "vinothbabu", "key": "vinothbabu", "displayName": "Vinothbabu", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-22T07:47:28.000+0000", "updated": "2012-06-22T07:47:28.000+0000" }, { "id": "200371", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Created [PR #2475|https://github.com/appcelerator/titanium_mobile/pull/2475] to resolve issue.\r\n", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-26T12:29:45.000+0000", "updated": "2012-06-26T12:29:45.000+0000" }, { "id": "200951", "author": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Expected behavior for testing with KS Camera Tests:\r\n\r\nNon HTC Phones:\r\n1. Basic Camera: the image should be stored in sdcard/Pictures folder\r\n2. Camera custom overlay: no image should be store in sdcard (check sdcard/dcim/Camera/KitchenSink and sdcard/Pictures)\r\n3. Camera overlay webview: no image should be store in sdcard (check same locations as #2)\r\n4. SaveToGallery: the image should be stored in sdcard/Pictures folder\r\n5. SaveToFile: the image should be stored in sdcard/dcim/Camera/KitchenSink AND when you exit the app, it should be DELETED.\r\n\r\nIf you're testing with HTC phones, all images stored in sdcard/Pictures will be stored in sdcard/dcim/100media instead.", "updateAuthor": { "name": "hpham", "key": "hpham", "displayName": "Hieu Pham", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-06-29T14:55:03.000+0000", "updated": "2012-06-29T14:55:03.000+0000" }, { "id": "209424", "author": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I have tried using the kitchen sink example code to apply this fix, since it sounds like the only way to never save an image to the external SD is if you use a custom overlay on the camera. So when using the kitchen sink code, even if saveToPhotoGallery is not declared, no image is saved at all (on sd or internally). \r\n\r\nHere is the code that shows this: http://pastie.org/4332655 Running on Rezound Android 4.0. \r\n\r\nAny guidance on this fix or how to only save an image to internal storage (without ever saving anything to external) with a code example would be extremely helpful since a customer needs this functionality asap.", "updateAuthor": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-25T15:06:24.000+0000", "updated": "2012-07-25T15:06:24.000+0000" }, { "id": "209438", "author": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I found the error, this commment: If you're testing with HTC phones, all images stored in sdcard/Pictures will be stored in sdcard/dcim/100media instead\r\n\r\nis incorrect. htc phones will store in sdcard/pictures, not in dcim. closing ticket again. ", "updateAuthor": { "name": "clathrop", "key": "clathrop", "displayName": "Carter Lathrop", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-25T16:02:39.000+0000", "updated": "2012-07-25T16:02:39.000+0000" } ], "maxResults": 9, "total": 9, "startAt": 0 } } }