{"action":"created","issue":{"url":"https://api.github.com/repos/nextcloud/android/issues/1836","repository_url":"https://api.github.com/repos/nextcloud/android","labels_url":"https://api.github.com/repos/nextcloud/android/issues/1836/labels{/name}","comments_url":"https://api.github.com/repos/nextcloud/android/issues/1836/comments","events_url":"https://api.github.com/repos/nextcloud/android/issues/1836/events","html_url":"https://github.com/nextcloud/android/pull/1836","id":279526983,"number":1836,"title":"Overhauled data storage management","user":{"login":"ardevd","id":366855,"avatar_url":"https://avatars1.githubusercontent.com/u/366855?v=4","gravatar_id":"","url":"https://api.github.com/users/ardevd","html_url":"https://github.com/ardevd","followers_url":"https://api.github.com/users/ardevd/followers","following_url":"https://api.github.com/users/ardevd/following{/other_user}","gists_url":"https://api.github.com/users/ardevd/gists{/gist_id}","starred_url":"https://api.github.com/users/ardevd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ardevd/subscriptions","organizations_url":"https://api.github.com/users/ardevd/orgs","repos_url":"https://api.github.com/users/ardevd/repos","events_url":"https://api.github.com/users/ardevd/events{/privacy}","received_events_url":"https://api.github.com/users/ardevd/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/nextcloud/android/milestones/10","html_url":"https://github.com/nextcloud/android/milestone/10","labels_url":"https://api.github.com/repos/nextcloud/android/milestones/10/labels","id":2066499,"number":10,"title":"Nextcloud App 2.1.0","description":"","creator":{"login":"AndyScherzinger","id":1315170,"avatar_url":"https://avatars3.githubusercontent.com/u/1315170?v=4","gravatar_id":"","url":"https://api.github.com/users/AndyScherzinger","html_url":"https://github.com/AndyScherzinger","followers_url":"https://api.github.com/users/AndyScherzinger/followers","following_url":"https://api.github.com/users/AndyScherzinger/following{/other_user}","gists_url":"https://api.github.com/users/AndyScherzinger/gists{/gist_id}","starred_url":"https://api.github.com/users/AndyScherzinger/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AndyScherzinger/subscriptions","organizations_url":"https://api.github.com/users/AndyScherzinger/orgs","repos_url":"https://api.github.com/users/AndyScherzinger/repos","events_url":"https://api.github.com/users/AndyScherzinger/events{/privacy}","received_events_url":"https://api.github.com/users/AndyScherzinger/received_events","type":"User","site_admin":false},"open_issues":34,"closed_issues":113,"state":"open","created_at":"2016-10-13T00:16:04Z","updated_at":"2017-12-10T21:18:39Z","due_on":null,"closed_at":null},"comments":11,"created_at":"2017-12-05T20:54:19Z","updated_at":"2017-12-11T07:51:15Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/nextcloud/android/pulls/1836","html_url":"https://github.com/nextcloud/android/pull/1836","diff_url":"https://github.com/nextcloud/android/pull/1836.diff","patch_url":"https://github.com/nextcloud/android/pull/1836.patch"},"body":"Storing user data and RSA keys on the root of the external storage is not a good idea. The data storage system has been overhauled here with the following changes.\r\n\r\n- The `STORAGE_PATH` user preference is now set to the [private internal app storage directory](https://developer.android.com/guide/topics/data/data-storage.html#filesInternal) by default.\r\n- The DataStorageProvider's getAvailableStoragePoints method now returns the [private internal data directory](https://developer.android.com/guide/topics/data/data-storage.html#filesInternal) and, if available, the [private external storage directory](https://developer.android.com/guide/topics/data/data-storage.html#filesExternal).\r\n- `PushUtils` will now store and handle the RSA keypair in the [private internal storage directory](https://developer.android.com/guide/topics/data/data-storage.html#filesInternal). The keys need to be here since even the private external storage directory is accessible to everyone with the `READ_EXTERNAL_STORAGE` permission. Therefore we specify the internal storage directory for these instead of using the `STORAGE_PATH` preference. \r\n\r\nPlease ignore 8ca99c6. I updated this as intended in d4670ad\r\n\r\nThis fixes #1833"},"comment":{"url":"https://api.github.com/repos/nextcloud/android/issues/comments/350646692","html_url":"https://github.com/nextcloud/android/pull/1836#issuecomment-350646692","issue_url":"https://api.github.com/repos/nextcloud/android/issues/1836","id":350646692,"user":{"login":"ardevd","id":366855,"avatar_url":"https://avatars1.githubusercontent.com/u/366855?v=4","gravatar_id":"","url":"https://api.github.com/users/ardevd","html_url":"https://github.com/ardevd","followers_url":"https://api.github.com/users/ardevd/followers","following_url":"https://api.github.com/users/ardevd/following{/other_user}","gists_url":"https://api.github.com/users/ardevd/gists{/gist_id}","starred_url":"https://api.github.com/users/ardevd/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ardevd/subscriptions","organizations_url":"https://api.github.com/users/ardevd/orgs","repos_url":"https://api.github.com/users/ardevd/repos","events_url":"https://api.github.com/users/ardevd/events{/privacy}","received_events_url":"https://api.github.com/users/ardevd/received_events","type":"User","site_admin":false},"created_at":"2017-12-11T07:51:15Z","updated_at":"2017-12-11T07:51:15Z","author_association":"NONE","body":"@mario There should be a system for regenerating keys anyway. As an experiment I deleted the keys from external storage (with the stock Nextcloud app) and it didn't seem like the app took any mitigating course of action. I haven't really looked through the relevant code and figured out how to best solve this but regardless of where key files are stored there should be some contingency plan should they keys be missing. \n\nI've done some testing with MS Word specifically and it seems like the app simple doesn't handle FileProvider URLs properly. I've tried reaching out to MS about it but no response so far. I'll try again though. "}}
{"actor":{"display_login":"ardevd"}}