[Service(
Label = nameof(InitAccessibilityService),
Permission = "android.permission.BIND_ACCESSIBILITY_SERVICE"
)]
[IntentFilter(new string[] { "android.accessibilityservice.AccessibilityService" })]
public class InitAccessibilityService : AccessibilityService
{
public static InitAccessibilityService mService { get; private set; }
protected override void OnServiceConnected()
{
base.OnServiceConnected();
var info = new InitAccessibilityServiceInfo
{
Flags = AccessibilityServiceFlags.Default,
EventTypes = EventTypes.AllMask,
FeedbackType = FeedbackFlags.AllMask,
NotificationTimeout = 100
};
SetServiceInfo(info);
mService = this;
}
public override void OnAccessibilityEvent(AccessibilityEvent e)
{
var root = e.Source;
if(root == null)
{
//這里為什么會獲取到空值啊
}
}
}
另一個獲取頁面的方式也是空的:
//直接獲取當前頁面是空的
AccessibilityNodeInfo root = InitAccessibilityService.mService.RootInActiveWindow;
//獲取Windows的串列,Count()==0,也沒有東西
var rootLists = InitAccessibilityService.mService.Windows.ToList();
var roots = rootLists.Select(s => s.Root).ToList();
Xamarin可搜索到的東西太少了。
我找到關于輔助服務的內容,都是關于java android的的,
這一段代碼,我也是照著安卓的代碼改過來的。
實際運行之后,輔助服務初始化正常,但捕獲到螢屏事件之后,event中看不到當前頁面,不知道問題出在哪里,求教。
或者,有沒有這方面的博客教程,我百度找,都是java android的。。。
uj5u.com熱心網友回復:
沒有用過Xamarin,之前開發android的掃描,也是直接使用android sdk和java開發。
當時也是由于Xamarin國內資料不多,所以沒選。
只能幫頂了。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/172911.html
標籤:C#
上一篇:關于C# 呼叫curl命令問題,熟悉curl命令的幫下忙
下一篇:layui時間控制元件問題
