What is this?
This is a simple alarm application of android (version 2.2.x - 2.3.3, 4.x).
sleep tunes (e.g.1h) wake-up tunes w vibration application starts Alarm set ------------------> ..... Alarm time ---------------> press "set alarm" button display google calendar/Gmail etc..
If you want to stop vibration only, please use "stop vibration" menu
How to start
- Put your music file into /sdcard/music directory of android device
- Prepare m3u format play list for sleep (named sleep.m3u) and wakeup (named wakeup.m3u). m3u file contains one music filename in one line.
- Put playlists and stop.m4a file in /sdcard/music/ directory of android device.
- Download apk file from https://github.com/mamewotoko/malarm/downloads or Build malarm and install it on android device
- Run malarm on android device
You can change path to playlist and music files by "Playlist directory" preference screen
- Xperia acro
- Android 2.3.4 (API level 10)
- 480x854 (WVGA+) screen
- AQUOS PHONE Serie SHL21
- Android 4.0.4
- Android 4.1.2
- Android 2.1 emulator (API level 7)
- Android 2.2 emulator (API level 8)
- Android 4.0 emulator
Basically m3u format. Podcast is supported by adding podcast XML url like following
The first episode is played.
- Music stops when DRM decoding failed
- merge PlayserService from podplayer project
- add UI to widen WebView area
- use playlist created by Google music player
- add UI to select playlist for wakeup and sleep.
- Write more detail to help page
- how to create playlist
- how to create customized url list file
- add preference to avoid network access from web viewer
- add network preference, disable/enable
- e.g. display photo
- fix bugs
- long press set alarm button -> rotate -> then notification disappears but alarm is set
- alarm set -> pause music from menu -> notification title is incorrect
- make COOL widget to set alarm (make clock widget?)
- show music title as a notification, not filename
- add play button on volume preference to check volume
- show mark on playing music in playlist preference
- improve UI to create and edit playlist
- improve accessibility http://android-developers.blogspot.jp/2012/04/accessibility-are-you-serving-all-your.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+blogspot/hsDu+(Android+Developers+Blog)
- add introduction guide or tutorial to create playlist
- improve wording especially one of notification
- parse preference.xml to test preference easily. (remove lookup and table)
- use text to speech to read web page http://developer.android.com/resources/articles/tts.html
- add preference to set silent mode or restore volume
- change notification icon while playing music
- change webview into photo view, movie player...
- separate webview part from main activity
- add UI to play ringtone on VolumePreference to check volume
- hide time picker after malarm is set? (or count down?)
- scale of web contents
- move current playing position when playlist is edited
- add mode to display alert dialog if device is not charged when alarm is set
- fix UI update bug when sleep timer expires (broadcast -> activity)
- conditional playlist
- Sunday, holiday playlist etc...
- add more test cases
- setAlarm -> Activity quits
- double touch of webview
- label text is updated when music is stopped or alarm is canceled
- check default config value
- fix bug when native player is used....
- support HVGA, WVGA, WVGA+ resolution
- localize: French, Chinese (needs pull request...?)
- support multiple episode of podcast?
- support shuffle of music
- use Actionbar
- Design for tablets
- record wakeup time
How To Build From Command Line
- Create local.properties file and set sdk.dir property to location where you installed android SDK
sdk.dir=<path to android SDK>
- In project top directory execute following command
- malarm-debug.apk will be created in bin directory, if successed
Start Android Emulator And Install APK From Command Line
- start android emulator
emulator -avd <avdname>
- install application on android emulator
adb install bin/malarm-cmd.apk
(build.xml and *.property files are created by android create command) or install app using ant
Automated UI Testing
There is a GUI automated test using Robotium, named malarm_test
- URL list specification
- if malarm/urllist.txt exists in external storage(e.g. SD card), it is used as url list file url list file is a text file which contains title followed by tab and its url par line you can specify slide show contents in asset e.g. file:///android_asset/local/step.html
- otherwise, url list specified by UI is used pref_url_list_value in values/arrays.xml is used
- MultiListPreference is based on the following web page http://blog.350nice.com/wp/archives/240
- Alarm application starts when user push appwidget of malarm.
- Dropsync is a useful Android app!
- To use @Overrides annotation, use following eclipse setting