alv*_*aro 6 service binding android accessibility
我创建了一个android Service,它扩展了一个AccessibilityService.从我Activity,我想绑定到那Service.因为我需要从发送信息Service到Activity.我需要示例代码.我搜索过谷歌并没有找到类似的东西,有人可以给一个例子链接.
ala*_*anv 13
虽然可以从Activity绑定AccessibilityService,但您只能将AccessibilityEvents传递到服务中.这是因为AccessibilityService.onBind()被声明为final,这意味着您将无法向绑定器添加任何新方法.
但是,有几种替代解决方案.
如果您的活动和服务在同一进程中运行(如果它们位于同一个APK中,则通常是这样),那么您可以与辅助功能服务的静态实例进行通信.这是一个如何工作的例子:
MyAccessibilityService.java:
private static MyAccessibilityService sSharedInstance;
protected void onServiceConnected() {
. . .
sSharedInstance = this;
}
public boolean onUnbind(Intent intent) {
sSharedInstance = null;
. . .
}
public static MyAccessibilityService getSharedInstance() {
return sSharedInstance;
}
Run Code Online (Sandbox Code Playgroud)
MyActivity.java
protected void onCreate() {
. . .
mAccessibilityService = MyAccessibilityService.getSharedInstance();
if (mAccessibilityService != null) {
// The service is running and connected.
mAccessibilityService.doSomething();
}
}
Run Code Online (Sandbox Code Playgroud)
如果您的服务和活动位于不同的流程中(例如单独的APK),那么您仍有几个选择:
如果您需要详细说明其中任何一个,请发表评论.
| 归档时间: |
|
| 查看次数: |
3833 次 |
| 最近记录: |