我有一个应用程序项目,它使用一个库(引用库项目,而不是使用jar)。在第一个库里面,我想使用另一个库(Estimate Beacons Library),这次使用第一个库libs文件夹中的jar。为了正确使用第二个库,我需要在清单中声明以下服务:
<service android:name="com.estimote.sdk.service.BeaconService"
android:exported="false"/>
我已尝试在APP项目清单中声明此服务,但它没有得到它。使用第一个库项目清单是相同的(正常情况下,如果我没错,编译器会忽略此清单吗?)。
非常感谢任何帮助。我一直在寻找类似的问题,但我没有幸运。
编辑:
即使使用以下配置,它也不起作用:
我还创建了一个测试应用程序,声明服务和蓝牙权限,并在lib文件夹中添加库,它工作得很好,所以当我使用我的库时,它会变得混乱。
答案 0 :(得分:0)
AndroidManifest.xml
它只是Application
配置文件,而不是build
文件。
如果您使用的是Gradle
构建系统,则应在build.grale
和settings.gradle
文件中指定库依赖项。
答案 1 :(得分:0)
尝试在project.properties文件中启用清单合并:
manifestmerger.enabled=true
在构建项目后,还要检查bin目录中生成的清单,并确保服务定义在那里。
这是适用于Android Beacon Library,的方法,我用它来使其他库依赖它。
但最终,Android Studio确实提供了更灵活的工具来实现这一目标。