Let's refactor the Android Wikipedia app to make it easier to access content from a third-party MediaWiki installation. This is a parent task for the Hackathon. The breakdown is based on @Florian's blog post about his experiences in customizing the Wikipedia app code to work with his own MediaWiki installation. Initially I think it would be good enough to allow the customization via config files or additional DevSettings. A wizard is not necessary at this time, maybe later of if time permits.
As preparation, participants are encouraged to be familiar with the Wikipedia Android App Hacking page and have Android Studio installed, a Gerrit account set up, and the repo cloned. If needed I'll help with the setup, of course.
Some ideas for subtasks:
- Add new mediawiki Gradle flavor
- different applicationId so the app can be installed side by side with the Wikipedia app
- different (MediaWiki) default app icons and app labels
- When mediawiki flavor is used add a new (regular) app setting to get only the settings needed to specify the mediawiki site.
- Customize the feed_header_wordmark.xml
- Add new HA app ID for crash reporting instrumentation
- Make www/preview.html also dynamic (to similarly to www/index.html)
- Remove https://wikipedia.org from preview.html
- Add similar code as was done for the change in index.html
- Update corresponding files in app/src/main/assets
- Make changes to MediaWiki Base URI and Support Multiple languages dynamic, so that the app does not have to be restarted after the setting is changed.
- Make MediaWiki base directory (script path /w/) customizable (probably using siteinfo to get a Wikis configuration dynamically)
- Disable EventLogging
- Add documentation to hacking page or separate Wiki page. Mention which Dev Settings one most likely would want to change and give general tips.