代码之家  ›  专栏  ›  技术社区  ›  MrX

辅助功能设置更改共享首选项的值

  •  1
  • MrX  · 技术社区  · 7 年前

    有一种情况是应用程序的所有者忘记了密码。因此,我需要在应用程序外部实现外部设置(如IOS),以更改共享首选项的值,从而关闭活动KIOS。

    我读了一些文章,接近的方法是使用可访问性,但有关这方面的信息和例子很难找到。所以我仍然在学习和测试。

    以下是我所做的:

    设置程序.java

    public class SettingProgram extends AccessibilityService {
        public static boolean isGuestMode = false;
    
        @Override
        public void onAccessibilityEvent(AccessibilityEvent event) {
    //            isGuestMode = false;
    
    
        /*I want to 
          if switch the Accessibility turn on the boolean isGuestMode become true, 
          and if it turn off the isGuestMode become false
         */
        }
    
        @Override
        public void onInterrupt() { }
    
        @Override
        protected void onServiceConnected() {
            super.onServiceConnected();
        }
    }
    

    <?xml version="1.0" encoding="utf-8"?>
    <accessibility-service 
    xmlns:android="http://schemas.android.com/apk/res/android"
        android:description="@string/accessibility_service_description"
        android:accessibilityEventTypes="typeAllMask"
        android:accessibilityFlags="flagReportViewIds"
        android:canRetrieveWindowContent="true"
        android:canRequestTouchExplorationMode="true"
        android:accessibilityFeedbackType="feedbackSpoken"
        android:notificationTimeout="100" 
        android:settingsActivity="com.mobile.Testing.SettingProgram"/>
    

    我读过:

    https://codelabs.developers.google.com/codelabs/developing-android-a11y-service/index.html?index=..%2F..%2Findex#0

    https://developer.android.com/guide/topics/ui/accessibility/services

    2 回复  |  直到 7 年前
        1
  •  1
  •   Axbor Axrorov    7 年前

    我不认为易访问性服务是你需要的。因为医生说:

    无障碍服务帮助残疾用户使用 帮助用户处理屏幕上的信息,并让他们

    我可以建议您使用远程调用,如Firebase Push message,当程序收到一些特殊消息时,它将更改密码或删除等。

        2
  •  0
  •   MrX    7 年前

    我已经做过了 Accessibility Service 调用另一个布局。这边走:

    我创建可访问性xml文件,如以下文档所示:

    <accessibility-service
       xmlns:android="http://schemas.android.com/apk/res/android"
       android:description="@string/accessibility_service_description"
       android:accessibilityFeedbackType="feedbackGeneric"
       android:accessibilityFlags="flagDefault"
       android:canRetrieveWindowContent="true"
       android:settingsActivity="com.mobile.vhp.checkin.SettingAndList.GeneralSetting"/>   
    

    Guest Mode . 来宾模式将调用“常规设置”活动为应用程序之外的我的应用程序设置另一个设置。