叶小枫666
叶小枫666
  • 发布:2022-07-06 20:59
  • 更新:2024-07-09 18:16
  • 阅读:1053

开发android原生插件,如何调用Service

分类:uni-app

使用android studio开发uniapp插件,创建一个Service并通过startService调用,发现service的onCreate函数并没有被调用,这个是为什么呢?


Intent floatWin = new Intent(mUniSDKInstance.getContext(), FloatingImageDisplayService.class);  
 ((Activity)mUniSDKInstance.getContext()).startService(floatWin);  
2022-07-06 20:59 负责人:无 分享
已邀请:
叶小枫666

叶小枫666 (作者)

已解决!
处理方法:
在代码中调用下面的命令启动service。只需要将 TestService.class替换为自己的Service类即可。

 mUniSDKInstance.getContext().startService(new Intent(mUniSDKInstance.getContext(), TestService.class));

然后在AndroidManifest.xml文件中添加service标签,注意要用自动提示功能,不要自己写 路径+类名的方式。

正确的配置路径为:

<service android:name="io.dcloud.uniplugin.TestService" />
叶小枫666

叶小枫666 (作者)

在模块的AndroidManifest.xml文件中,添加了下面的代码,依然没有效果

<service android:name=".FloatingImageDisplayService"  />
湖东呀

湖东呀

请问你的service类是怎么引入mUniSDKInstance的呢?官方文档演示使用mUniSDKInstance都是在extend UniModule的情况下,但是自定义service怎么继承UniModule?

9***@qq.com

9***@qq.com

请问<serveice>标签是配置在<application>下面吗
我和您的写法一样,运行时报Unable to add window – token null is not valid; is your activity running? 这个您是如何解决的呢,是不是startService的第一个参数需要传入Activity类型的context

要回复问题请先登录注册