Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

相同moudle被不同主app调用@Provider的processName #23

Open
wuweixiang2018 opened this issue Jan 24, 2018 · 16 comments
Open

相同moudle被不同主app调用@Provider的processName #23

wuweixiang2018 opened this issue Jan 24, 2018 · 16 comments

Comments

@wuweixiang2018
Copy link

相同moudle被不同主app调用@Provider的processName的不一样,这个怎么写啊

@SpinyTech
Copy link
Owner

你这个我没有太理解,能举个具体点的例子吗

@wuweixiang2018
Copy link
Author

比如我有个im(及时通讯)的moudle,需要同时在病人端APP(进程名cn.dreamplus.wentang),医生端APP(进程名cn.dreamplus.wentangdoctor),调用im moudle,im里面的@Provider的processName声明成cn.dreamplus.wentang:im,那么医生端不能正常访问

@SpinyTech
Copy link
Owner

目前不支持跨app访问moudle。你必须在你的医生端和病人端各拥有一个im moudle,才能正常使用。

@wuweixiang2018
Copy link
Author

嗯,这样就不适合我实际的使用场景了,封装SDK,主要也是为了多个app可以共用

@SpinyTech
Copy link
Owner

SpinyTech commented Jan 25, 2018 via email

@wuweixiang2018
Copy link
Author

@Provider@action病人端和医生端需要分别写,其他的代码共用,是指这样吧?

@SpinyTech
Copy link
Owner

不是的,你的im写成一个lib module,对外提供provider和action。
在病人端和医生端的app module中,分别对这个provider和action进行注册就行了。

你的im应该是在:im进程内部,只要前缀package不以这样,就是能找到provider和action的。

@wuweixiang2018
Copy link
Author

你的im写成一个lib module,对外提供provider和action,比如@Provider的processName我怎么写啊?在病人端和医生端的app module中,分别对这个provider和action进行注册就行了,注册的时候分别怎么写啊?

@SpinyTech
Copy link
Owner

在你对应进程的ApplicationLogic的onCreate中,调用
LocalRouter.getInstance(mApplication).registerProvider("im",new IMProvider());

@wuweixiang2018
Copy link
Author

@Provider的processName我怎么写?

@wuweixiang2018
Copy link
Author

/**

  • Created by wuweixiang on 18/1/3.
    */
    @Provider(processName = IMGlobal.PACKAGE_NAME)
    public class IMProvider extends MaProvider {
    @OverRide
    protected String getName() {
    return "im";
    }
    }
    就是这个processName怎么写

@wuweixiang2018
Copy link
Author

AndroidManifest.xml文件里面的service怎么写?

@wuweixiang2018
Copy link
Author

能否把几个关联环节怎么写,都给个例子啊,谢谢

@wuweixiang2018
Copy link
Author

ProviderInit.init(mProviderMap, mActionMap);我还碰到ProviderInit找不到,我已经按照文档操作了

@SpinyTech
Copy link
Owner

你这个不是我的代码啊。我的代码Provider都是手工注册的。
LocalRouter.getInstance(mApplication).registerProvider("main",new MainProvider());

@wuweixiang2018
Copy link
Author

我下载的代码,demo里面的代码是靠注解的啊

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants