无法启动服务[服务名称]与空 [英] Unable to start service [service name] with null
问题描述
我最近codeD一款Android窗口小部件和仿真器,以及我的Galaxy S测试它,它工作得很好两个,以后我张贴同样的到Android市场现在我得到了一些错误报告。
i recently coded a Android Widget and tested it on Emulator as well as my Galaxy S , it worked fine on both, after i posted the same to android market now i am getting some error reports.
我在控件类的OnUpdate中这样陈述一个服务:
i am stating a service in the onUpdate of Widget Class like this:
if (appWidgetIds != null) {
final int N = appWidgetIds.length;
// Perform this loop procedure for each App Widget that belongs to
// this
// provider
for (int i = 0; i < N; i++) {
// Start Service for each instance
int appWidgetId = appWidgetIds[i];
Intent active = new Intent(context, DialerService.class);
active.setAction("Start");
active.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID,
appWidgetId);
context.startService(active);
}
}
这部分人所得到的错误是:
the error which some people are getting is:
java.lang.RuntimeException: Unable to start service dialer.impact.DialerService@45f926f0 with null: java.lang.NullPointerException
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3282)
at android.app.ActivityThread.access$3600(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2211)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:144)
at android.app.ActivityThread.main(ActivityThread.java:4937)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
**at dialer.impact.DialerService.onStart(DialerService.java:18)**
at android.app.Service.onStartCommand(Service.java:420)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3267)
... 10 more
错误指出一个 NullPointerException异常
在第18行的 ServiceClass
这是这样的:
error states a NullPointerException
on line 18 of the ServiceClass
which is this:
@Override
public void onStart(Intent intent, int startId) {
//Line 18th
String command = intent.getAction();
int appWidgetId = intent.getExtras().getInt(
AppWidgetManager.EXTRA_APPWIDGET_ID);
RemoteViews remoteView = new RemoteViews(getApplicationContext()
.getPackageName(), R.layout.main);
AppWidgetManager appWidgetManager = AppWidgetManager
.getInstance(getApplicationContext());
}
第18行是字符串命令= intent.getAction();
可能是什么意图是空的原因 请大家帮忙
what could be the reason for intent being null please help
推荐答案
据为<一个文档href="http://developer.android.com/reference/android/app/Service.html#onStart%28android.content.Intent,%20int%29"><$c$c>onStart()$c$c> (实际上 onStartCommand()
但参数是相同的):
According to the documentation for onStart()
(actually onStartCommand()
but the parameters are the same):
意图的提供给startService(意向),给出的意图。 这可能是空如果该服务被 重新启动后,它的过程已经 程,它已经previously返回 任何东西,除了 START_STICKY_COMPATIBILITY。
intent The Intent supplied to startService(Intent), as given. This may be null if the service is being restarted after its process has gone away, and it had previously returned anything except START_STICKY_COMPATIBILITY.
这篇关于无法启动服务[服务名称]与空的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!