Android(安卓)AppWidgetProvider使用简例
16lz
2021-01-26
AppWidgetProvider是一个BroadcastReceiver,必须在AndroidManifest.xml中声明该Receiver,并接收“Android.appwidget.action.APPWIDGET_UPDATE”。AppWidgetProvider使开发者能够自定义的桌面小工具。本文介绍一个桌面时钟的小工具。用户安装程序后需要在手机窗口小工具中添加,方可查看到。
继承AppWidgetProvider类,实现update方法。
package com.example.desktopdemo;import java.text.SimpleDateFormat;import java.util.Date;import android.annotation.SuppressLint;import android.app.Service;import android.appwidget.AppWidgetManager;import android.appwidget.AppWidgetProvider;import android.content.ComponentName;import android.content.Context;import android.content.Intent;import android.os.IBinder;import android.widget.RemoteViews;public class EX04_28 extends AppWidgetProvider {@Overridepublic void onUpdate(Context context, AppWidgetManager appWidgetManager,int[] appWidgetIds) {Intent intent = new Intent(context, UpdateService.class);context.startService(intent);super.onUpdate(context, appWidgetManager, appWidgetIds);}public static class UpdateService extends Service {@Overridepublic IBinder onBind(Intent intent) {// TODO Auto-generated method stubreturn null;}@SuppressLint("SimpleDateFormat") @Overridepublic void onStart(Intent intent,int startId){RemoteViews updateViews = new RemoteViews(this.getPackageName(),R.layout.main);SimpleDateFormat sdf = new SimpleDateFormat("hh:mm");updateViews.setTextViewText(R.id.textView01, ""+sdf.format((new Date())));ComponentName thisWidget = new ComponentName(this,EX04_28.class);AppWidgetManager manager = AppWidgetManager.getInstance(this);manager.updateAppWidget(thisWidget, updateViews);}}}
AndroidManifest.xml的定义
<?xml version="1.0" encoding="utf-8"?>
my_widget_provider.xml定义(注:android:updatePeriodMillis 这种方式已经在SKD1.5以后被废了,可自定义线程进行刷新):
<?xml version="1.0" encoding="utf-8"?>
main.xml定义:
<?xml version="1.0" encoding="utf-8"?>
Demo下载
更多相关文章
- Android(安卓)多线程保证操作同步(同步锁的俩种)
- android 面试
- Android自定义View基础--Paint画笔设置样式
- Android(安卓)Camera+SurfaceView实现自定义拍照
- Android中不能在子线程中更新View视图的原因
- Android(安卓)自定义组件相关
- Android(安卓)基于RecyclerView上下拉刷新(让你轻松自定义头部和
- android app 与电脑wifi通信(二)
- 简单的网页源码查看器