我有一个服务在它自己的过程中,我已经在清单中声明它:
<service
android:name="com.discountscatcher.util.PointService"
android:configChanges="orientation"
android:process=":pointservice" >
</service>
但onStartCommand
我试图获得ApplicationContext
,但它总是返回null,我能忘记什么?
public int onStartCommand(Intent intent, int flags, int startId) {
android.os.Debug.waitForDebugger();
Context mContext = getApplicationContext();
return Service.START_STICKY;
}
我就这样开始:
startService(new Intent(getApplicationContext(), PointService.class));
Myactivity OnCreate
中的
任何想法?
答案 0 :(得分:5)
您正在另一个进程中运行Service
,因此它与实际应用程序进程无法通信。
尝试从服务中删除此行
android:process=":pointservice"
应用程序完成后,应用程序上下文变为空。在大多数情况下,不需要在不同的进程中运行服务。也不建议这样做。
有关详细信息,请点击此处