gpt4 book ai didi

java - 无法在 Android 中启动服务

转载 作者:行者123 更新时间:2023-12-02 08:12:41 33 4
gpt4 key购买 nike

我制作了用于阅读新闻的小部件。如果我在主屏幕上放置一个小部件,一切都很好。但是,如果我在主屏幕上放置了第二个小部件并将其删除,则该小部件的服务就会停止。因此,如果小部件进入更新方法,则会发生错误。

java.lang.RuntimeException: Unable to start service news.WidgetActivity$UpdateService@405231d8 with Intent { flg=0x10000000 cmp=news/.WidgetActivity$UpdateService bnds=[26,97][79,151] }: java.lang.NullPointerException

这一行有一个空指针:

RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget);

代码如下:

public static class UpdateService extends Service {
@Override
public void onStart(Intent intent, int startId) {

RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget);

remoteViews.setViewVisibility(R.id.WidgetRefresh_btn, View.GONE);
remoteViews.setViewVisibility(R.id.progressWidget, View.VISIBLE);

appWidgetManager.updateAppWidget(appWidgetId, remoteViews);

WidgetActivity.Widget.onUpdate(context, appWidgetManager, appWidgetIds);

}

@Override
public IBinder onBind(Intent arg0) {
return null;
}
}

最佳答案

您的 context 对象可能为 null。由于您处于扩展Context的服务中,因此您也可以使用this.getPackageName()或仅使用getPackageName()

关于java - 无法在 Android 中启动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7098059/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com