내 AppWidgetProvider
클래스에서 다음은 4.1.2에서 나에게 적합합니다 (4.x에서만 작동하기를 원한다면) - 그렇지 않으면 적절한 버전의 패키지와 클래스 이름을 선택하기위한 조건부 논리가 필요합니다.) 게시물에 당신이 연결처럼 : 대신 com.android.deskclock.DeskClock
의 com.android.deskclock.AlarmClock
(com.google.android.deskclock
로를 사용하여 기본적으로
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
PendingIntent pendingIntent;
if (AppWidgetManager.ACTION_APPWIDGET_UPDATE.equals(action)) {
RemoteViews views = new RemoteViews(context.getPackageName(),
R.layout.main);
pendingIntent = PendingIntent.getActivity(context, 0,
getAlarmPackage(context), 0);
views.setOnClickPendingIntent(R.id.analogClock1, pendingIntent);
AppWidgetManager
.getInstance(context)
.updateAppWidget(
intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS),
views);
}
}
private Intent getAlarmPackage(Context context) {
PackageManager manager = context.getPackageManager();
Intent intent = new Intent(Intent.ACTION_MAIN)
.addCategory(Intent.CATEGORY_LAUNCHER);
try {
ComponentName c = new ComponentName("com.google.android.deskclock",
"com.android.deskclock.AlarmClock");
manager.getActivityInfo(c, PackageManager.GET_META_DATA);
intent.setComponent(c);
} catch (NameNotFoundException nf) {
Log.d("XXXX", "Caught name not found exception!");
}
return intent;
}
) 경보 목록 대신 알람 시계 화면을 생성합니다.