Learning Objectives Summer '14 - adamwilhelmi/DAWCS GitHub Wiki

CSC 499 - Independent Study

  • Advanced Android Development
    • Summer 2014

Learning Objectives:

  1. Android Fragments

  2. Concurrency in Android

  3. Android's SQLite Databse Integration

    • Integrating a database into the application in order to save templates and recorded streams
  4. Components, Intents and Activities

    • When to use which, and how
  5. Widgets and App Icons

    • How to write a widget, and why DAWCS might need one
    • A little graphics never hurt nobody
  6. Phones and Tablets and Phablets, Oh My!

    • Developing for multiple resolutions, devices and versions
      • Considerations for images and layouts in regards to multiple resolutions
  7. 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??
  8. 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
  9. 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
  10. 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?
  11. Testing

    • JUnit, etc. in Android
  12. Publishing to the Google Play Store