Java 安卓:点击小部件事件

Java 安卓:点击小部件事件,java,android,android-widget,Java,Android,Android Widget,我完全不熟悉android编程,我尝试点击一个android小部件: public class MyWidget extends AppWidgetProvider { public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { // Loop through all widgets for(int i=0;i < appWidgetIds.l

我完全不熟悉android编程,我尝试点击一个android小部件:

public class MyWidget extends AppWidgetProvider {
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
        int[] appWidgetIds) 
{
// Loop through all widgets
for(int i=0;i < appWidgetIds.length;i++) {
    int appWigedid = appWidgetIds[i];
    // Create an intent to launce something
    Intent intent = new Intent(context,TestActivity.class);
    PendingIntent pendingintent = PendingIntent.getActivity(context, 0, intent, 0);


    // Get the layout for the app widget and attach on click listener
    RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.initial_layout);
    views.setOnClickPendingIntent(R.id.UselessMessage, pendingintent);
    views.setTextViewText(R.id.UselessMessage,"This text is useless");
    AppWidgetManager manager = AppWidgetManager.getInstance(context);
    manager.updateAppWidget(appWigedid,views);
}
}
}

文本的设置有效。但testicitivity的onStart方法永远不会执行(其他sysout消息也可以)。当我点击小部件android日志时:

12-25 17:17:43.054  1279  1392 I ActivityManager: Starting activity: Intent { flg=0x10000000 cmp=org.rfc1149.android.simple/.TestActivity bnds=[120,272][360,371] }

这表明活动已创建,但onCreate不起作用。

请确保在清单中定义了您的
测试活动

确保清单中定义了您的
测试活动

您的onCreate()方法确实有效,并将登录到可在DDMS透视图上查看的LogCat(如果您使用Eclipse)。要使onStart()方法有效,必须在重写的onStart()方法中调用super.onStart()。

您的onCreate()方法确实有效,并将登录到可在DDMS透视图上查看的LogCat(如果您使用Eclipse)。要使onStart()方法工作,必须在重写的onStart()方法中调用super.onStart()。

使用
Log.d(“myTAG”、“调试文本”)
而不是
System.out.println(“调试文本”)
使用
Log.d(“myTAG”、“调试文本”)
而不是
System.out.println(“调试文本”)

我知道,但那只是一种更好的输出方式。没有什么区别。我知道,但那只是一种更好的输出方式。没有区别。是的,谢谢。我觉得错过了那本书很愚蠢。顺便说一句,你的书很棒。是的,谢谢。我觉得错过了那本书很愚蠢。顺便说一句,你的书很棒。
12-25 17:17:43.054  1279  1392 I ActivityManager: Starting activity: Intent { flg=0x10000000 cmp=org.rfc1149.android.simple/.TestActivity bnds=[120,272][360,371] }