先简单介绍一下桌面插件的形成方式:
xml文件中各个属性网上有解释,可以查。
首先,在res文件中新建XML文件
<?xml version= "1.0" encoding= "utf-8"?> <appwidget-provider xmlns:android= "http://schemas.android.com/apk/res/android" android:minWidth="100dp" android:minHeight="100dp" android:updatePeriodMillis = "10000" android:initialLayout = "@layout/appwidget" > </appwidget-provider>
在原xml文件中布局
<?xml version= "1.0" encoding= "utf-8"?> <LinearLayout xmlns:android= "http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="第一个app_widget应用" android:textSize="30dp"></TextView> </LinearLayout>
Androidmanifest.xml设置代码
<?xml version= "1.0" encoding= "utf-8"?> <manifest xmlns:android= "http://schemas.android.com/apk/res/android" package="com.AppWidgetDemo" android:versionCode="1" android:versionName="1.0"> <uses-sdk android:minSdkVersion="7" /> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".MainActivity" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name="AppWidgetDemo"> <intent-filter> <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> </intent-filter> <meta-data android:name="android.appwidget.provider" android:resource="@xml/app_widget" /> </receiver> </application> </manifest>
代码如下
package com.AppWidgetDemo; import android.appwidget.AppWidgetManager; import android.appwidget.AppWidgetProvider; import android.content.Context; import android.content.Intent; public class AppWidgetDemo extends AppWidgetProvider { @Override public void onDeleted(Context context, int[] appWidgetIds) { System.out.println( "onDeleted"); super.onDeleted(context, appWidgetIds); } @Override public void onDisabled(Context context) { System.out.println( "onDisabled"); super.onDisabled(context); } @Override public void onEnabled(Context context) { System.out.println( "onEnabled"); super.onEnabled(context); } @Override public void onReceive(Context context, Intent intent) { System.out.println( "onReceive"); super.onReceive(context, intent); } @Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { System.out.println( "onUpdate"); super.onUpdate(context, appWidgetManager, appWidgetIds); System.out.println( "super下面的onUpdate"); } }