您的位置:首页 > 其它

生成桌面插件

2013-01-09 17:39 162 查看
package org.app.qqmusicplayer;

import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.RemoteViews;

public class AppWidget extends AppWidgetProvider {
private static final String PLAY_ACTION = "com.app.playmusic";
private static final String NEXT_ACTION = "com.app.nextone";
private static final String lAST_ACTION = "com.app.lastone";
private static final String START_APP = "com.app.startapp";
@Override
public void onDeleted(Context context, int[] appWidgetIds) {
Log.i("info", "onDeleted...");
super.onDeleted(context, appWidgetIds);
}

@Override
public void onDisabled(Context context) {
Log.i("info", "onDisabled...");
super.onDisabled(context);
}

@Override
public void onEnabled(Context context) {
Log.i("info", "onEnabled...");
super.onEnabled(context);
}

@Override
public void onReceive(Context context, Intent intent) {
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.appwidgetlayout);
if (intent.getAction().equals("com.app.pause")){
views.setImageViewResource(R.id.playButton, R.drawable.play_button);
} else if (intent.getAction().equals("com.app.play")){
views.setImageViewResource(R.id.playButton, R.drawable.pause_button);
} else if (intent.getAction().equals("com.app.musictitle")){
String musicName = intent.getExtras().getString("title");
if (musicName.length()>6){
musicName = musicName.substring(0, 5)+"...";
}
views.setTextViewText(R.id.title, musicName);
}
AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
ComponentName componentName = new ComponentName(context,AppWidget.class);
appWidgetManager.updateAppWidget(componentName, views);
Log.i("info", "onReceive...");
super.onReceive(context, intent);
}

@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
Log.i("info", "onUpdate...");
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.appwidgetlayout);
/**设置播放键的动作*/
views.setImageViewResource(R.id.playButton, R.drawable.play_button);
Intent playIntent = new Intent(PLAY_ACTION);
PendingIntent playPending = PendingIntent.getBroadcast(context, 0, playIntent, 0);
views.setOnClickPendingIntent(R.id.playButton, playPending);
/**设置上一首按钮的动作*/
Intent lastIntent = new Intent(lAST_ACTION);
PendingIntent lastPending = PendingIntent.getBroadcast(context, 0, lastIntent, 0);
views.setOnClickPendingIntent(R.id.lastButton, lastPending);
/**设置下一首按钮的动作*/
Intent nextIntent = new Intent(NEXT_ACTION);
PendingIntent nextPending = PendingIntent.getBroadcast(context, 0, nextIntent, 0);
views.setOnClickPendingIntent(R.id.nextButton, nextPending);

/**获取正在播放的音乐名*/
Intent intent = new Intent();
intent.setAction(START_APP);
context.sendBroadcast(intent);

appWidgetManager.updateAppWidget(appWidgetIds, views);
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: