dreamlwj
dreamlwj
  • 发布:2015-12-31 16:04
  • 更新:2018-12-16 07:07
  • 阅读:1737

android自己写的插件绑定系统服务失败

分类:5+ SDK

我在android下写插件,里面需要绑定蓝牙服务,但是怎么也绑定不了,求解!

	Intent i = new Intent(this, BleService.class);  
	bindService(i, mServiceConnection, Context.BIND_AUTO_CREATE);  

protected final ServiceConnection mServiceConnection = new ServiceConnection() {  

	/**  
	 * 连接失败回调  
	 */  
	@Override  
	public void onServiceDisconnected(ComponentName name) {  
		bleService = null;  
	}  

	/**  
	 * 连接成功回调  
	 */  
	@Override  
	public void onServiceConnected(ComponentName name, IBinder service) {  
		bleService = ((BleService.LocalBinder) service).getService();  
		if (!bleService.initialize()) {  
			  
		} else {  
		}  
	}  
};
2015-12-31 16:04 1 条评论 负责人:无 分享
已邀请:
Devon

Devon

能否分享此插件。。。

Android_磊子

Android_磊子

就是Android标准的代码,断点试试是否可行。

  • dreamlwj (作者)

    试过了,不行的。我尝试在插件中连接蓝牙服务,但是始终没有回调。因为连接蓝牙服务,只能在activity或者service中,我两个都尝试了,但是始终不行。


    2016-01-04 12:52

  • Android_磊子

    回复 dreamlwj:你先抛开5+ sdk尝试成功后,再做为插件接入。


    2016-01-04 14:13

  • dreamlwj (作者)

    回复 Android_磊子:代码早就写好测试通过了,现在的情况是这样的,因为蓝牙插件要连接系统服务,连接系统服务就需要在activity或者service中进行,而我们的蓝牙本来就封装成了一个service,所以选择在activity中进行。那么我有两种方案,一种是直接使用activityEntry类作为插件类,把蓝牙连接做在里面,初始化的时候可以正常连接蓝牙,获得一个blesevice对象(这样实际上蓝牙就可以使用了),但是当我在h5中操作蓝牙的时候,第一次操作要初始化插件,调用了init函数之后我发现blesevice对象就变成null了。之后我把蓝牙逻辑放到SDK_WebApp类中,得到了同样的结果。

    因为之前的蓝牙连接是在activity的oncreate函数中进行的,然后我尝试了在init里连接蓝牙服务,这回是一点反应都没有了,或者说init的时候就不是把那个类当做activity来初始化的,所有压根就不会调用系统服务连接的回调。

    那么,我想请教的是,是不是我的思路出问题了,有没有以往做过的,需要连接系统服务的插件案例?

    多谢!


    2016-01-04 14:25

  • dreamlwj (作者)

    回复 Android_磊子:我换了一个思路,就是在一个activity中去处理蓝牙服务,然后用插件类来和activity通信。蓝牙服务可以正常连接,但是插件类这边的问题比较多。为了发广播,我让插件类继承了service(或者activity),但是只要一调用ifeature的intit函数,这个对象就不能用service和activity的任何机制了,根本不能和我开的那个activity通信。

    那么我想请教一下,实现了ifeature的类,如何可以和我插件里的其他对象交互?

    多谢!


    2016-01-04 17:01

dreamlwj

dreamlwj (作者)

忍不住要讲粗话了,老子搞了这么久终于给他搞定了,接下来要去完善下代码,ble蓝牙插件的即将诞生。。。

  • 7***@qq.com

    蓝牙插件?能否分享一下


    2016-08-16 09:39

  • a***@163.com

    我也在開發這個BLE插件,能否共享一下? anyvegos@163.com


    2018-04-03 16:10

DCloud_heavensoft

DCloud_heavensoft

该问题目前已经被锁定, 无法添加新回复