获取:不允许启动服务Intent...未经许可服务进程不好

发布于 2024-11-30 18:30:04 字数 470 浏览 0 评论 0原文

ACRA 的挤压报告向我发送了此错误。

java.lang.SecurityException: Not allowed to start service Intent { act=auto_update cmp=net.DailyTimer.CalendarAlarmHelperFree/net.DailyTimer.CalendarAlarmHelper.CalendarAlarmService } without permission Service process is bad

我在有限的设备上看到此错误,并且无法重现。我猜这个错误取决于运行环境。
我的问题是:

  • 什么权限是错误的?我不明白“服务流程很糟糕”是什么意思。

编辑:
调用 startService(intent) 启动远程服务时出现此错误。在许多设备上它都可以正常工作。

ACRA's crush report sends me this error.

java.lang.SecurityException: Not allowed to start service Intent { act=auto_update cmp=net.DailyTimer.CalendarAlarmHelperFree/net.DailyTimer.CalendarAlarmHelper.CalendarAlarmService } without permission Service process is bad

I see this error on limited devices and I can't reproduce. I guess this error depends on running environment.
My question is:

  • What permission is wrong? I could not find out what "Service process is bad" mean.

EDIT:
I'm getting this error when calling startService(intent) to start remote service. And on many devices it works fine.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

心房的律动 2024-12-07 18:30:04

虽然我自己没有经历过这种情况,但我环顾四周,我认为这些可能对你有用。 此处,用户 Jomia 说道:

您看到的 java.lang.SecurityException 是因为您可能
输入指向同一活动的两个条目。删除第二个并
你应该可以走了。

另外,请考虑查看此页面,特别是在公共静态最终int CONTEXT_INCLUDE_CODE。这是相关部分:

设置此标志会对应用程序施加安全限制
您可以访问的上下文;如果所请求的应用程序无法安全地
加载到您的进程中,将抛出 java.lang.SecurityException。
如果未设置此标志,则不会对包进行任何限制
可以加载,但 getClassLoader() 将始终返回
默认系统类加载器。

我希望我能提供一些帮助。如果这些回复与您的问题无关,您可能想尝试发布相关代码等。干杯。

Although I have not experienced this myself, I did some looking around and I think these might be useful to you. Here, user Jomia says:

The java.lang.SecurityException you are seeing is because you may
enter two entries pointing to same activity. Remove the second one and
you should be good to go.

Also, consider taking a look at this page, specifically under public static final int CONTEXT_INCLUDE_CODE. Here is the relevant part:

Setting this flags imposes security restrictions on what application
context you can access; if the requested application can not be safely
loaded into your process, java.lang.SecurityException will be thrown.
If this flag is not set, there will be no restrictions on the packages
that can be loaded, but getClassLoader() will always return the
default system class loader.

I hope I could be of some help. If these responses are unrelated to your issue, you might want to try posting relevant code, etc. Cheers.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文