日本精品久久-日本精品二区-日本精品二区-日本极品少妇-成人欧美一区二区三区黑人免费-成人欧美一区二区三区黑人免费

Android后臺程序應用技巧分享

來源:網絡

點擊:1482

A+ A-

所屬頻道:新聞中心

關鍵詞: Android,后臺程序,應用技巧

      Android手機操作系統是由谷歌推出的一款開源的基于Linux平臺的操作系統,深受廣大編程愛好者的喜愛。在Android系統中我們一直在接觸著前臺界面程序,其實在一開始接觸Android時就聽說了,程序就有有界面和無界面之分。

      Android后臺程序就是這類無界面的程序,它在后臺執行,沒有影響你的界面。比如短信監聽程序,執行在后臺,當有短信時才給你們提示,振動或聲音;比如鬧鐘,設定好時間后,在定時通知你;再比如mp3播放器,選擇好音樂后,在待在后臺唱著,當有電話來時,自動暫停,完后再繼續播放。

      其實分析下來,我們不難發現,Android后臺程序跟前臺程序是一樣的,也就是在執行我們指定的程序,只是留給我們兩個問題,1。因為沒有界面,我們會問,怎么啟動,怎么終止?2。因為沒有界面,這程序如何通知我們一些信息或狀態。

      前面的學習讓我們知道,一個Activity想Call另一個Activity時,只需要能過中介人Intent就可以了,同樣我們與服務處理類打交道也是通過Intent來實現,當然,界面類是繼承著Activity,而服務類則是繼承著Service類。

      啟動服務:

      1.// Implicitly start a Service

      2.startService(new Intent(MyService.MY_ACTION));

      3.// Explicitly start a Service

      4.startService(new Intent(this, MyService.class));

      停止服務:

      1.stopService(new Intent(this, MyService.class));

      同樣,跟Activity一樣的生命期中,系統也會自動跟據不同的狀態來調用繼承函數:

      1.@Override

      2.public void onCreate()

      3.public IBinder onBind(Intent intent)

      4.public void onStart(Intent intent, int startId)

      5.。。。

      在實際的開發中,我們一般都不會直接寫一個服務類,一般都會寫一個與Android后臺程序相配套的前臺程序,一般的程序總會有一些配置吧~~,然后這個界面中就可以很方便地來控制后臺程序的運作。

      我們來回答第二個問題,就是在服務中我們怎么發起一個通知給用戶,在Andorid中,提供了以下幾種方式:

      1. Toast

      這是一個無模式的小窗體,會將顯示的信息顯示在首頁面中:

      實現代碼是:

      1.Context context = getApplicationContext();

      2.String msg = “To the bride an groom!”;

      3.int duration = Toast.LENGTH_SHORT;

      4.Toast toast = Toast.makeText(context, msg, duration);

      5.int offsetX = 0;

      6.int offsetY = 0;

      7.toast.setGravity(Gravity.BOTTOM, offsetX, offsetY);

      8.toast.show();

      當然,你也可以顯示更雜的,可以將一個控制直接當成一個Toast顯示出來,也可以自定義一個控件顯示出來,自定義控件的強大是大家都知道的~~

      2. Notifications

      這種方式是系統中比較通用的模式,通過這種方式你可以使系統:將一個圖標在狀態條上閃,讓機器震動,發出聲音等。

      實現代碼:

      1.String svcName = Context.NOTIFICATION_SERVICE;

      2.NotificationManager notificationManager;

      3.notificationManager = (NotificationManager)getSystemService(svcName);

      4.// Choose a drawable to display as the status bar icon

      5.int icon = R.drawable.icon;

      6.// Text to display in the status bar when the notification is launched

      7.String tickerText = “Notification”;

      8.// The extended status bar orders notification in time order

      9.long when = System.currentTimeMillis();

      10.Notification notification = new Notification(icon, tickerText, when);

      11.Context context = getApplicationContext();

      12.// Text to display in the extended status window

      13.String expandedText = “Extended status text”;

      14.// Title for the expanded status

      15.String expandedTitle = “Notification Title”;

      16.// Intent to launch an activity when the extended text is clicked

      17.Intent intent = new Intent(this, MyActivity.class);

      18.PendingIntent launchIntent = PendingIntent.getActivity(context, 0, intent, 0);

      19.notification.setLatestEventInfo(context, expandedTitle,expandedText,launchIntent);

      觸發方式:

      1.int notificationRef = 1;

      2.notificationManager.notify(notificationRef, notification);

      學會了Activity再寫個Android后臺程序也就不難了!!

      這里順便再提一下,在Android系統中也提供了多線程編程,我們知道不管是前臺還是后臺程序,都有生命期的,當程序不活動時,我們想繼續讓程序執行,這里我們需要用到線程了,在Android系統中使用線程,跟我們直接寫java線程程序非常想似:

      1.// This method is called on the main GUI thread.

      2.private void mainProcessing() {

      3.// 主程序中啟動線程。

      4.Thread thread = new Thread(null, doBackgroundThreadProcessing,

      “Background”);

      5.thread.start();

      6.}

      7.// Runnable that executes the background processing method.

      8.private Runnable doBackgroundThreadProcessing = new Runnable() {

      9.public void run() {

      10.//線程執行內容。。。

      11.}

      12.};

    (審核編輯: 智匯小新)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 血色玫瑰电影完整版| 红色诗歌配画| 苏西| 松雪泰子| 刘浩存个人资料及简介| 三人行菲律宾| 白世莉| 远景山谷1981免费版| 来自地狱| tvb直播| 六一儿童节对联七字| 视频999| 《stag》电影在线观看| 肉爆电影| 国家励志奖学金个人主要事迹1500字 | 谏逐客书电子课本图片| 陈建斌梅婷新剧《不惑之旅》| 是王者啊第二季免费观看完整版| 我和我的祖国教案| 色在线亚洲| 少年派二普通话版| 小救星小渡| 失落之城电影| 五年级脱式计算题100道| 意大利a级情欲片女人城| 游泳池play高h| 挠vk| 我的冠军男友在线看全集完整| 古风少女换装纸娃娃| 张艺宣| 2014春节联欢晚会| 美食总动员在线观看完整版免费| 一起来看流星雨剧照| 故宫博物院思维导图| kaori全部av作品大全| 现代企业管理| 补铁最好水果第一名| cctv17节目表今天| 《爱的温暖》电影在线观看| 大场鸫| 时间空间和人第二部|