亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 系統 > Android > 正文

Android實現靜態廣播監聽器的方法

2020-04-11 11:29:09
字體:
來源:轉載
供稿:網友

本文實例講述了Android實現靜態廣播監聽器的方法。分享給大家供大家參考。具體實現方法如下:

package lab.sodino.broadcastaction;import lab.sodino.util.DatabaseOpenHelper;import lab.sodino.util.SodinoOut;import android.app.Activity;import android.content.ContentResolver;import android.database.ContentObserver;import android.database.Cursor;import android.os.Bundle;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.ViewGroup.LayoutParams;import android.widget.Button;import android.widget.LinearLayout;import android.widget.ScrollView;import android.widget.TextView;/** * 本例子將記錄可靜態注冊的廣播被監聽到的頻度。<br/> * 1.建立一表{ACTION_NAME廣播名稱,LAST_TIME最近一次發生時間,COUNT總共記錄到的次數}<br/> * 2.在ActionReceiver中監聽廣播,并記錄。 <br/> * 3.在DBContentProvider中更新數據庫記錄<br/> * 4.在BroadcastActionRecordAct.ActionDBObserver中監聽數據庫的變化, * 并使用Handler機制將最新情況顯示在txtInfo上。<br/> * 5.DatabaseOpenHelper將實現基本的數據庫操作。 *  * @author Sodino */public class BroadcastActionRecordAct extends Activity implements  Button.OnClickListener { private TextView txtInfo; private DatabaseOpenHelper dbHelper; private Button btnRefresh; /** clear功能未完善。 */ private Button btnClear; private Handler handler = new Handler() {  public void handleMessage(Message msg) {   String info = (String) msg.obj;   txtInfo.setText(info);  } }; @Override public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  LayoutParams lpPC = new LayoutParams(LayoutParams.FILL_PARENT,    LayoutParams.WRAP_CONTENT);  LayoutParams lpCC = new LayoutParams(LayoutParams.WRAP_CONTENT,    LayoutParams.WRAP_CONTENT);  btnRefresh = new Button(this);  btnRefresh.setLayoutParams(lpCC);  btnRefresh.setText("Refresh");  btnRefresh.setOnClickListener(this);  btnClear = new Button(this);  btnClear.setLayoutParams(lpCC);  btnClear.setText("ClearTable");  btnClear.setOnClickListener(this);  LinearLayout subLayout = new LinearLayout(this);  subLayout.setLayoutParams(lpPC);  subLayout.setOrientation(LinearLayout.HORIZONTAL);  subLayout.addView(btnRefresh);  subLayout.addView(btnClear);  txtInfo = new TextView(this);  txtInfo.setLayoutParams(lpPC);  txtInfo.setTextColor(0xff0000ff);  txtInfo.setBackgroundColor(0xffffffff);  txtInfo.setText("Starting...");  txtInfo.setTextSize(15);  ScrollView scrollView = new ScrollView(this);  scrollView.setLayoutParams(lpPC);  scrollView.addView(txtInfo);  LinearLayout mainLayout = new LinearLayout(this);  mainLayout.setLayoutParams(lpPC);  mainLayout.setOrientation(LinearLayout.VERTICAL);  mainLayout.addView(subLayout);  mainLayout.addView(scrollView);  setContentView(mainLayout);  dbHelper = new DatabaseOpenHelper(this);  ContentResolver contentResolver = getContentResolver();  contentResolver.registerContentObserver(DBContentProvider.CONTENT_URI,    false, new ActionDBObserver(handler)); } public void onClick(View view) {  if (view == btnRefresh) {   refreshRecord();  } else if (view == btnClear) {   clearRecord();  } } public void refreshRecord() {  dbHelper.openReadableDatabase();  String info = dbHelper.getAllOrderedList(DatabaseOpenHelper.DESC);  dbHelper.close();  if (info != null) {   txtInfo.setText(info);  } else {   txtInfo.setText("<NULL/>");  }  dbHelper.close(); } public void clearRecord() {  dbHelper.openWritableDatabase();  dbHelper.clearRecord();  dbHelper.close(); } private class ActionDBObserver extends ContentObserver {  private Handler handler;  public ActionDBObserver(Handler handler) {   super(handler);   this.handler = handler;  }  public void onChange(boolean selfChange) {   super.onChange(selfChange);   String[] projection = { "ACTION_NAME", "LAST_TIME", "COUNT" };   // String selection = "select * from ActionTable";   String sortOrder = "COUNT DESC";   // dbHelper.openReadableDatabase();   // Cursor cursor = dbHelper.query(projection, null, null,   // sortOrder);   Cursor cursor = managedQuery(DBContentProvider.CONTENT_URI,     projection, null, null, sortOrder);   String info = "";   String line = "";   int actionIdx = 0;   int timeIdx = 1;   int countIdx = 2;   while (cursor.moveToNext()) {    line += cursor.getString(actionIdx) + " ";    line += cursor.getString(timeIdx) + " ";    line += cursor.getString(countIdx) + "/n";    info += line;    line = "";   }   Message msg = new Message();   msg.obj = info;   handler.sendMessage(msg);   cursor.close();   // dbHelper.close();   SodinoOut.out("Database does changed!!!");  }  public boolean deliverSelfNotifications() {   return super.deliverSelfNotifications();  } }}

希望本文所述對大家的Android程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美在线看| 动漫精品一区二区| 少妇久久久久久| 欧美日韩国产成人在线观看| 国产成+人+综合+亚洲欧洲| 久久久成人精品| 国模视频一区二区三区| 国产成人啪精品视频免费网| 欧美日韩国产二区| 日韩欧美国产免费播放| 久久久久久中文| 日韩一区二区在线视频| 视频在线一区二区| 成人激情电影一区二区| 欧美最猛性xxxx| 欧美成人国产va精品日本一级| 亚洲精品日韩久久久| 午夜精品一区二区三区视频免费看| 亚洲人成毛片在线播放| 亚洲影院高清在线| 亚洲欧美在线一区二区| 668精品在线视频| 91免费看视频.| 亚洲美女av黄| 欧美大尺度激情区在线播放| 国产精品18久久久久久首页狼| 国产亚洲欧洲高清| 尤物yw午夜国产精品视频| 国产精品美女久久久免费| 亚洲天堂av在线播放| 国产精品第10页| 91久久夜色精品国产网站| 国产精品精品一区二区三区午夜版| 亚洲一区二区自拍| 97超级碰在线看视频免费在线看| 91人成网站www| 日韩免费在线看| 久久精品电影一区二区| 午夜精品三级视频福利| 国产精品一区二区三区毛片淫片| 亚洲欧美制服综合另类| 伊人久久综合97精品| 亚洲精品影视在线观看| 日韩精品在线观看一区二区| 韩国精品久久久999| 成人福利视频网| 亚洲美女激情视频| 清纯唯美亚洲激情| 久久伊人精品视频| 98精品国产自产在线观看| 久久好看免费视频| 欧美激情视频一区| 国产免费一区二区三区在线能观看| 亚洲xxxx在线| 亚洲а∨天堂久久精品9966| 久久久精品影院| 日韩电影中文字幕在线| 欧美wwwxxxx| 中文字幕在线国产精品| 日韩在线免费观看视频| 精品久久久一区二区| 欧美中文在线观看| 国产精品精品一区二区三区午夜版| 俺去亚洲欧洲欧美日韩| 日韩av电影免费观看高清| 一本色道久久88综合亚洲精品ⅰ| 6080yy精品一区二区三区| 欧美成人一二三| 亚洲国产成人精品久久| 91在线免费观看网站| 国产99久久精品一区二区永久免费| 日韩在线免费高清视频| 日韩国产精品一区| 久99久在线视频| 日韩av网站大全| 日韩中文在线中文网三级| 国产专区欧美专区| 欧美亚洲在线播放| 91精品久久久久| 欧洲中文字幕国产精品| 亚洲精品网站在线播放gif| 国产精品18久久久久久麻辣| 97久久伊人激情网| 国产成人高潮免费观看精品| 日韩精品极品在线观看播放免费视频| 成人国产精品久久久久久亚洲| 欧美综合在线第二页| 欧美精品国产精品日韩精品| 中文字幕免费精品一区| 亚洲成人1234| 亚洲欧洲在线观看| 91久久国产婷婷一区二区| 国产69精品久久久久9| 欧美精品videos另类日本| 精品欧美激情精品一区| 欧美日本亚洲视频| 欧美黑人一级爽快片淫片高清| 国模极品一区二区三区| 亚洲欧美另类在线观看| 欧美裸体xxxx极品少妇| 亚洲最新av在线网站| 成人午夜小视频| 一区二区三区动漫| 成人97在线观看视频| 国产精品男人爽免费视频1| 日韩电影在线观看中文字幕| 伦伦影院午夜日韩欧美限制| 亚洲精品女av网站| 欧美大片大片在线播放| 国内外成人免费激情在线视频网站| 一区二区三区黄色| 在线播放精品一区二区三区| 91精品国产高清自在线| 亚洲欧美国产日韩中文字幕| 成人福利网站在线观看| 欧美精品精品精品精品免费| 国产91精品黑色丝袜高跟鞋| 北条麻妃一区二区三区中文字幕| 亚洲午夜小视频| 欧美中文在线观看国产| 亚洲性夜色噜噜噜7777| 8x海外华人永久免费日韩内陆视频| 日韩一区二区欧美| 亚洲激情在线观看视频免费| 亚洲自拍另类欧美丝袜| 中文字幕日韩欧美在线视频| 中文字幕亚洲情99在线| 91成人性视频| 欧美极品少妇xxxxⅹ喷水| 欧美亚洲一级片| 久久久久这里只有精品| 久久影院模特热| 丁香五六月婷婷久久激情| 狠狠躁夜夜躁人人爽超碰91| 国产精品一区二区三区成人| 国产精品网红直播| 日本午夜人人精品| 欧美性极品xxxx做受| 亚洲大胆美女视频| 九九热最新视频//这里只有精品| 欧美肥臀大乳一区二区免费视频| 成人午夜激情免费视频| 一区二区欧美久久| 国产精品久久久精品| 精品国产一区二区三区久久久狼| 日韩中文av在线| 久久影视电视剧免费网站| 久久精品欧美视频| 欧美一级大片在线观看| 久久久久久国产精品久久| 日韩精品久久久久久福利| 97在线视频免费播放| 国产精品第一页在线| 视频在线观看99| 欧美亚洲免费电影| 日韩最新av在线| 欧美激情2020午夜免费观看| 久久91精品国产91久久久| 久久青草精品视频免费观看| 国产精品ⅴa在线观看h| www.xxxx欧美| 日韩视频免费大全中文字幕| 精品国产鲁一鲁一区二区张丽| 中文字幕久精品免费视频|