歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android 實用鬧鐘開發過程記

Android 實用鬧鐘開發過程記

日期:2017/3/1 10:40:59   编辑:Linux編程
題外話:寫Android手機鬧鐘的想法有一個月的時間了但一直都沒有開始。一方面沒時間(主要是懶惰啊),另一方面覺得鬧鐘沒什麼好寫的。但是當我某一天(記不得是多少號了)睡覺時突然想到這個想法想想流程想想要做確實很多還有一個重要的原因是對我這個魅族M9自帶的鬧鐘是又愛又恨,界面很漂亮而且功能也很多。但是也有很多不好的地方,用戶體驗不是很好至少對我而言。

比如:當我沒有手動關閉鬧鐘時,它響了3分鐘後就不會再響了,雖然我設了再響時間(明顯是個BUG);還有就是當我在同一天設置很多鬧鐘時無法一鍵全關閉很煩人;再有就是在鎖屏狀態下點關閉鬧鐘後就取消了鎖屏等等問題。促使我去寫一個小鬧鐘一個適合自己的鬧鐘。

要做一個真正的鬧鐘肯定不能只有一個要可以隨心所欲地加--只要你願意,你可以加到天荒地老哈哈。所以一定會用到數據庫。下面介紹一下我建的數據庫:代碼如下

public class alarmsql extends SQLiteOpenHelper{

String createtable="create table " + toolutil.tablename + " (" +toolutil.id + " INTEGER PRIMARY KEY " +
", "+ toolutil.hour +" INTEGER ," + toolutil.minute +" INTEGER ," + toolutil.lasttime + " INTEGER ," + toolutil.week + " TEXT , " +toolutil.state
+" INTEGER ," + toolutil.music + " TEXT " + ")";
public alarmsql(Context context, String name, CursorFactory factory,
int version) {
super(context, name, factory, version);

}
public void onCreate(SQLiteDatabase db) {
db.execSQL(createtable);
}

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {


}

}

toolutils:toolutils代碼如下:

public class toolutil {
public static final String id="_id";
public static final String week="WEEK";
public static final String state="STATE";
public static final String music="MUSIC";
public static final String lasttime="CONTINUE";
public static final String hour="HOUR";
public static final String minute="MINUTE";
public static final String tablename="DATA";

}

通過繼承SQLiteOpenHelper來創建數據庫。怎麼用的就不說了。下面說一下建表意圖:id字段不用說了(android建表必須的字段名字必須為_id否則會報錯),week字段是存儲一周重復的星期參數我傳入七位的0、1字符串意圖不言而喻(0代表沒選),state是否關閉鬧鐘標識位,music是存入的鈴聲名字,lasttime是鬧鐘重復的時間,余下兩個字段看名字就明白了。

Copyright © Linux教程網 All Rights Reserved