我最近在我的应用程序中实现了一个意向服务,并想知道为什么我无法启动它。
Unable to start service Intent { cmp=com.myapp/.service.DownloadSerive } U=0: not found
检查git状态后,我发现清单中先前添加的服务条目已被删除。
- <service android:name=".service.DownloadSerive"/>
阅读并构建它后,惊喜: 它又消失了!
我不知道现在该做什么,也在完成我的服务时受到阻止。
明显的变化如何消失? AndroidStudio能做什么吗?
答案 0 :(得分:0)
感谢Scott Bartas评论,我发现一些奇怪的maven执行在构建时随时从某个子文件夹覆盖主清单。
<execution>
<id>copy-android-manifest</id>
<!-- here the phase you need -->
<phase>initialize</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<useDefaultDelimiters>false</useDefaultDelimiters>
<delimiters>
<delimiter>${*}</delimiter>
</delimiters>
<encoding>UTF-8</encoding>
<outputDirectory>${project.basedir}/</outputDirectory>
<resources>
<resource>
<includes>
<include>AndroidManifest.xml</include>
</includes>
<directory>${project.basedir}/config/</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
结论:
我不认为任何Android Studio或构建过程本身可能会更改清单内容。
当遇到问题时,可能会怀疑是否有人实现了它,无论是否有意。