Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从服务上下文获取LocationManager时出现Android NullPointerException_Java_Android_Nullpointerexception_Locationmanager - Fatal编程技术网

Java 从服务上下文获取LocationManager时出现Android NullPointerException

Java 从服务上下文获取LocationManager时出现Android NullPointerException,java,android,nullpointerexception,locationmanager,Java,Android,Nullpointerexception,Locationmanager,我得到: Caused by: java.lang.NullPointerException at android.content.ContextWrapper.getSystemService(ContextWrapper.java:423) 当应用程序启动时: locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE); 引发异常的代码是: 421:

我得到:

 Caused by: java.lang.NullPointerException
        at android.content.ContextWrapper.getSystemService(ContextWrapper.java:423)
当应用程序启动时:

    locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
引发异常的代码是:

421:    @Override
422:    public void grantUriPermission(String toPackage, Uri uri, int modeFlags) {
423:        mBase.grantUriPermission(toPackage, uri, modeFlags);
424:    }
(调试器在调用中将
mBase
显示为null。)

我查过:

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

有什么想法吗?

似乎您必须使用活动上下文来获取位置管理器

您的
上下文
是应用程序上下文吗?尝试将其更改为活动

编辑:


如果您在服务中,请在
onCreate()

中运行
getSystemService
,不知何故,您需要扩展活动类,在其中使用getSystemService方法

检查
上下文=null
then
context.getSystemService(context.LOCATION\u服务)放置服务类代码否,我的上下文是一个
扩展服务的类
。如何从启动接收器启动的长时间运行的服务中获取应用程序上下文?您是否在构造函数中调用它?您应该在onCreate()中调用该命令,谢谢,问题是我是从服务中的参数初始化器(间接)调用它的。从服务的
onCreate()
调用它(间接)修复了这个问题。
context={MyService@830033501600}