小部件崩溃并且无法通过单击小部件中的按钮来启动新活动

阿比纳夫

我的小部件包含一个textview和一个按钮。当用户单击小部件中存在的按钮时,我想开始一个新的活动。

我的AppWidgetProvider类如下:

public class WidgetProvider extends AppWidgetProvider {

    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager,
            int[] appWidgetIds) {
        // TODO Auto-generated method stub

        final int N = appWidgetIds.length;

        for(int i = 0; i<N; i++){

            int awID = appWidgetIds[i];

            Intent intent = new Intent(context, SettingsActivity.class);
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget_layout);
            views.setOnClickPendingIntent(R.id.btnSettings, pendingIntent);
//          v.setTextViewText(R.id.tvStatusDisplay, str);
            appWidgetManager.updateAppWidget(awID, views);
        }
    }

    @Override
    public void onDeleted(Context context, int[] appWidgetIds) {
        // TODO Auto-generated method stub
        super.onDeleted(context, appWidgetIds);
        Toast.makeText(context, "Bye Bye...!!", Toast.LENGTH_SHORT).show();
    }   

}

我的小部件属性的xml文件在这里:

<?xml version="1.0" encoding="utf-8"?>
<appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
    android:initialLayout="@layout/widget_layout"
    android:minHeight="50dp"
    android:minWidth="200dp"
    android:updatePeriodMillis="60000" android:configure="com.example.widgetsample.WidgetConfigure">

</appwidget-provider>

我的清单文件如下:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.widgetsample"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <receiver
            android:name=".WidgetProvider" 
            android:label="@string/hello_widget" >

            <intent-filter>
                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
            </intent-filter>

            <meta-data
                android:name="android.appwidget.provider"
                android:resource="@xml/widget_stuff" />
        </receiver>

        <activity 
            android:name="com.example.widgetsample.settingsActivity"
            android:label="Settings" >                        
        </activity>

    </application>

</manifest>

伙计们帮助我在源代码中找到问题。提前致谢。

编辑:我的logcat视图:

09-30 12:33:08.879: E/AndroidRuntime(278): FATAL EXCEPTION: main
09-30 12:33:08.879: E/AndroidRuntime(278): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=9, result=-1, data=Intent { (has extras) }} to activity {com.sec.android.app.twlauncher/com.sec.android.app.twlauncher.Launcher}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.widgetsample/com.example.widgetsample.WidgetConfigure}; have you declared this activity in your AndroidManifest.xml?
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityThread.deliverResults(ActivityThread.java:2590)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityThread.handleSendResult(ActivityThread.java:2632)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityThread.access$2000(ActivityThread.java:117)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:965)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.os.Handler.dispatchMessage(Handler.java:99)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.os.Looper.loop(Looper.java:130)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityThread.main(ActivityThread.java:3741)
09-30 12:33:08.879: E/AndroidRuntime(278):  at java.lang.reflect.Method.invokeNative(Native Method)
09-30 12:33:08.879: E/AndroidRuntime(278):  at java.lang.reflect.Method.invoke(Method.java:507)
09-30 12:33:08.879: E/AndroidRuntime(278):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
09-30 12:33:08.879: E/AndroidRuntime(278):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:625)
09-30 12:33:08.879: E/AndroidRuntime(278):  at dalvik.system.NativeStart.main(Native Method)
09-30 12:33:08.879: E/AndroidRuntime(278): Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.widgetsample/com.example.widgetsample.WidgetConfigure}; have you declared this activity in your AndroidManifest.xml?
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1405)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1379)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.Activity.startActivityForResult(Activity.java:2827)
09-30 12:33:08.879: E/AndroidRuntime(278):  at com.sec.android.app.twlauncher.Launcher.startActivityForResult(Launcher.java:2209)
09-30 12:33:08.879: E/AndroidRuntime(278):  at com.sec.android.app.twlauncher.Launcher.addAppWidget(Launcher.java:2503)
09-30 12:33:08.879: E/AndroidRuntime(278):  at com.sec.android.app.twlauncher.Launcher.onActivityResult(Launcher.java:1073)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.Activity.dispatchActivityResult(Activity.java:3908)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityGroup.dispatchActivityResult(ActivityGroup.java:123)
09-30 12:33:08.879: E/AndroidRuntime(278):  at android.app.ActivityThread.deliverResults(ActivityThread.java:2586)
09-30 12:33:08.879: E/AndroidRuntime(278):  ... 11 more
09-30 12:33:08.969: E/(183): Dumpstate > /data/log/dumpstate_app_error
打断

您已经在“ appwidget-provider”中指定了活动,但是还必须将活动添加到清单文件中,例如

<activity android:name="com.example.widgetsample.WidgetConfigure">
    <intent-filter>
        <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE"/>
    </intent-filter>
</activity>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何通过单击小部件中的图像来启动活动?

来自分类Dev

如何单击小部件中的按钮来关闭覆盖图?

来自分类Dev

单击窗口小部件时如何启动活动?

来自分类Dev

如何通过android SearchView小部件查询提交通过意图启动新活动

来自分类Dev

从窗口小部件活动启动的活动在Nougat中无响应

来自分类Dev

无法通过点击窗口小部件来启动应用程序

来自分类Dev

如何使小部件的文本启动活动

来自分类Dev

处理主屏幕小部件中的按钮单击

来自分类Dev

如何通过单击按钮突出显示(选择)“文本”小部件中的文本?

来自分类Dev

通过ADB启动Android小部件

来自分类Dev

如何通过单击小部件按钮将所有小部件值设置为默认值?

来自分类Dev

无法通过事件调用添加小部件

来自分类Dev

通过在另一个屏幕中按按钮来更改Kivy按钮小部件属性

来自分类Dev

在Kivy中启动多个小部件

来自分类Dev

在Tkinter中更改按钮小部件的大小

来自分类Dev

删除 kivy 小部件中的按钮

来自分类Dev

在magento小部件中包括新模板

来自分类Dev

如何访问 kivy 中的小部件?我需要通过按一个按钮来删除 TextInput

来自分类Dev

获取当前活动的小部件

来自分类Dev

小部件中的SurfaceView

来自分类Dev

小部件中的UITableView

来自分类Dev

小部件中的UITableView

来自分类Dev

找不到启动器活动!无法使小部件正常工作

来自分类Dev

在混乱中,如何让有状态的小部件/状态知道新数据可用并且需要重建?

来自分类Dev

获取按钮小部件的文本

来自分类Dev

单击小部件上的按钮时更改布局

来自分类Dev

按钮单击从API获取的添加下拉小部件

来自分类Dev

如何访问窗口小部件或刚刚单击的按钮的文本?

来自分类Dev

单击按钮时删除重点条目小部件

Related 相关文章

  1. 1

    如何通过单击小部件中的图像来启动活动?

  2. 2

    如何单击小部件中的按钮来关闭覆盖图?

  3. 3

    单击窗口小部件时如何启动活动?

  4. 4

    如何通过android SearchView小部件查询提交通过意图启动新活动

  5. 5

    从窗口小部件活动启动的活动在Nougat中无响应

  6. 6

    无法通过点击窗口小部件来启动应用程序

  7. 7

    如何使小部件的文本启动活动

  8. 8

    处理主屏幕小部件中的按钮单击

  9. 9

    如何通过单击按钮突出显示(选择)“文本”小部件中的文本?

  10. 10

    通过ADB启动Android小部件

  11. 11

    如何通过单击小部件按钮将所有小部件值设置为默认值?

  12. 12

    无法通过事件调用添加小部件

  13. 13

    通过在另一个屏幕中按按钮来更改Kivy按钮小部件属性

  14. 14

    在Kivy中启动多个小部件

  15. 15

    在Tkinter中更改按钮小部件的大小

  16. 16

    删除 kivy 小部件中的按钮

  17. 17

    在magento小部件中包括新模板

  18. 18

    如何访问 kivy 中的小部件?我需要通过按一个按钮来删除 TextInput

  19. 19

    获取当前活动的小部件

  20. 20

    小部件中的SurfaceView

  21. 21

    小部件中的UITableView

  22. 22

    小部件中的UITableView

  23. 23

    找不到启动器活动!无法使小部件正常工作

  24. 24

    在混乱中,如何让有状态的小部件/状态知道新数据可用并且需要重建?

  25. 25

    获取按钮小部件的文本

  26. 26

    单击小部件上的按钮时更改布局

  27. 27

    按钮单击从API获取的添加下拉小部件

  28. 28

    如何访问窗口小部件或刚刚单击的按钮的文本?

  29. 29

    单击按钮时删除重点条目小部件

热门标签

归档