向android自定义ROM添加位置服务时出错

时间:2017-06-17 05:56:44

标签: android location-services

我在android中写了一个位置服务。在AndroidManifest.xml中我定义了两个intent-filters:

<service
        android:name=".LocationServiceV2"
        android:exported="true"
        android:permission="android.permission.ACCESS_COARSE_LOCATION">
        <intent-filter>
            <action android:name="com.android.location.service.v3.NetworkLocationProvider" />
            <action android:name="com.android.location.service.v2.NetworkLocationProvider" />
        </intent-filter>

        <meta-data
            android:name="serviceVersion"
            android:value="2" />
        <meta-data
            android:name="serviceIsMultiuser"
            android:value="false" />
    </service>

但是当我在logcat中运行Nexus 5x时会出现此错误:

com.example.user.nlpservice解析了服务com.android.location.service.v3.NetworkLocationProvider,但签名错误,无视 什么意思是错误的签名以及我如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

要在android中添加位置服务,您应该在AOSP构建树的以下文件中添加位置服务的包名称以进行注册。

{AOSP BUILD TREE}/frameworks/base/core/res/res/values/config.xml

在上面的文件中,有一个名为config_locationProviderPackageNames的配置 添加一个项目并在其中写下您的位置服务包名称(例如com.example.app1)。

然后构建你的android操作系统,系统绑定它并且它可以工作。