没有从uid导出的权限,不允许启动服务Intent



我试图在我的android应用程序中调用第三方服务意图,但它返回错误:

. lang。SecurityException:不允许启动服务Intent {act=com.othercompany。SERVICE_INTENT flg=0x3 cmp=com.mycompany.package/com.othercompany.service。CoreService (has extras)}未经许可未从uid 10107导出

我试图调用的服务意图完全在我的应用程序外部,因此我无法访问其代码或清单文件。

我的代码如下:

        buttonPress.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent talkButtonDown = new Intent(PRESS_CLASS);
            talkButtonDown.setClassName(PACKAGE, "com.othercompany.service.CoreService");
            talkButtonDown.putExtra(RESTART_EXTRA, true);
            talkButtonDown.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            talkButtonDown.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
            startService(talkButtonDown);
        }
    });

我在其他帖子中读过关于需要'export =true'在外部应用程序的清单,但我没有访问这个清单。还有其他原因会导致这个错误吗?任何帮助将是非常感激的。欢呼。

是否有其他东西可能抛出这个错误?

。该服务不被导出。它仅供托管服务的应用程序使用,不允许其他应用程序直接调用。

你可以考虑联系相关公司,看看他们是否有文档化和支持的API来使用他们的Android应用。

最新更新