Learning Objectives Summer '14 - adamwilhelmi/DAWCS GitHub Wiki
CSC 499 - Independent Study
- Advanced Android Development
- Summer 2014
Learning Objectives:
-
Android Fragments
- What they are, how to use them and where they fit into the DAWCS project
-
Concurrency in Android
- How to implement new threads, when to use them and what pieces of DAWCS warrant their own
-
Android's SQLite Databse Integration
- Integrating a database into the application in order to save templates and recorded streams
-
Components, Intents and Activities
- When to use which, and how
-
Widgets and App Icons
- How to write a widget, and why DAWCS might need one
- A little graphics never hurt nobody
-
Phones and Tablets and Phablets, Oh My!
- Developing for multiple resolutions, devices and versions
- Considerations for images and layouts in regards to multiple resolutions
- Developing for multiple resolutions, devices and versions
-
Java Swing Companion Program
- QMidiNet; do we need it, and can/should we write our own swing app for linking to DAWCS?
- Possibility to use plugins - create functionality for DAWCS to control more than just a DAW
- DAWCS + swing app for home automation??
- Possibility to use plugins - create functionality for DAWCS to control more than just a DAW
- QMidiNet; do we need it, and can/should we write our own swing app for linking to DAWCS?
-
Networking in Android
- How to discover network computers in order to link DAWCS to a specific IP
- How to throttle the sending of packets to avoid flooding the network
- How to dynamically change the IP of connected DAW without crashing network thread
-
DAWs - Which Ones We Want to Support, and How
- How to control the MIDI packets to connect directly to a specific DAW
- Swing app may allow us to support any DAW, even on Windows
-
Android-to-Android Communication & Data Transfer
- How to make two devices talk in order to possibly dual-screen the app
- Bluetooth vs networking vs...?
- Companion app/mode for slave screen?
- How to make two devices talk in order to possibly dual-screen the app
-
Testing
- JUnit, etc. in Android
-
Publishing to the Google Play Store
- How to publish, legalities, and signing the app