mirror of
https://github.com/commons-app/apps-android-commons.git
synced 2025-10-26 20:33:53 +01:00
Add some code & storage info to readme
This commit is contained in:
parent
0f495b8e77
commit
bc077f2c9f
1 changed files with 45 additions and 0 deletions
45
README.md
45
README.md
|
|
@ -46,6 +46,51 @@ This software is licensed under the [Apache License][5].
|
||||||
|
|
||||||
This software has no bugs. You can dispute this statement at [bugzilla][3]
|
This software has no bugs. You can dispute this statement at [bugzilla][3]
|
||||||
|
|
||||||
|
## Code Structure ##
|
||||||
|
|
||||||
|
Key breakdowns:
|
||||||
|
|
||||||
|
Activities started within the UI:
|
||||||
|
* ContributionsActivity (ContributionsListFragment, MediaDetailPagerFragment, MediaDetailFragment) - main "my uploads" list and detail view
|
||||||
|
* LoginActivity - login screen when setting up an account
|
||||||
|
* SettingsActivity - settings screen
|
||||||
|
* AboutActivity - about screen
|
||||||
|
|
||||||
|
Activities receiving intents:
|
||||||
|
* ShareActivity (SingleUploadFragment, CategorizationFragment) - handles receiving a file from another app, accepting a title/desc, and slating it for upload
|
||||||
|
* MultipleShareActivity (MultipleUploadListFragment, CategorizationFragment) - handles receiving a batch of multiple files from another app, accepting a title/desc, and slating them for upload
|
||||||
|
|
||||||
|
Services:
|
||||||
|
* WikiAccountAuthenticatorService - authentication service
|
||||||
|
* UploadService - performs actual file uploads in background
|
||||||
|
* ContributionsSyncService - polls for updated contributions list from server
|
||||||
|
* ModificationsSyncService - pushes category additions up to server
|
||||||
|
|
||||||
|
Content providers:
|
||||||
|
* ContributionsContentProvider - private storage for local copy of user's contribution list
|
||||||
|
* ModificationsContentProvider - private storage for pending category and template modifications
|
||||||
|
* CategoryContentProvider - private storage for recently used categories
|
||||||
|
|
||||||
|
|
||||||
|
## On-Device Storage ##
|
||||||
|
|
||||||
|
Account credentials are encapsulated in an account provider. Currently only one Wikimedia Commons account is supported at a time. (Question: what is the actual storage for credentials?)
|
||||||
|
|
||||||
|
Preferences are stored in Android's SharedPreferences.
|
||||||
|
|
||||||
|
Information about past and pending uploads is stored in the Contributions content provider, which uses an SQLite database on the backend.
|
||||||
|
|
||||||
|
A list of recently-used categories is stored in the Categories content provider, which uses an SQLite database on the backend.
|
||||||
|
|
||||||
|
Captured files are not currently stored within the app, but are passed by content: or file: URI from other apps.
|
||||||
|
|
||||||
|
Thumbnail images are not currently cached. (?)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1]: https://developer.android.com/sdk/index.html
|
[1]: https://developer.android.com/sdk/index.html
|
||||||
[2]: https://maven.apache.org/
|
[2]: https://maven.apache.org/
|
||||||
[3]: https://bugzilla.wikimedia.org/enter_bug.cgi?product=Commons%20App
|
[3]: https://bugzilla.wikimedia.org/enter_bug.cgi?product=Commons%20App
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue