Android Accessibility Vision设置-负数,字体大小

时间:2018-07-07 21:37:03

标签: android accessibility

我需要快速更改一些辅助功能>视觉设置-可能通过App Widget-从“正常”模式切换到某些第三方应用程序的最佳设置(这些应用程序使用非常小的字体和闪烁的白色界面):
我需要更改全局设置
可访问性>视觉>字体大小

可访问性>视觉>底色 [意思是“倒置”]

对于“字体大小”,我有一个提示
getResources()。getConfiguration()。fontScale
财产和
Configuration.setTo(Configuration o)
方法;

但是我还没有找到有关“负色”设置的信息,该设置会反转屏幕颜色。有人知道如何设置吗?

编辑:三星过去发布了一个应用小部件,用于快速访问“负色”辅助功能设置,我会检查其工作原理,但找不到要下载并检查的APK。如果有人拥有它-该应用程序应该包含有趣的代码。

EDIT2 :我可能在/ system / app /中的ColorBlind.apk中找到了一个提示:
显然是为了防止设置不兼容,它的一行应通过
禁用“负色”设置。 boolean android.view.accessibility.AccessibilityManager .setmDNIeNegative(false)

EDIT3 :鉴于上述信息,我试图构建一个测试应用程序,但是我遇到了SecurityException,应该防止该异常。我需要权限方面的帮助,因为它们对我来说看起来不错。

我创建了一个简单的测试应用程序

AccessibilityManager am = (AccessibilityManager) getSystemService(Context.ACCESSIBILITY_SERVICE);
am.setmDNIeNegative(true);

但是由于找不到方法boolean AccessibilityManager.setmDNIeNegative(boolean),因此我在生成的APK上使用了apktool并将相关的smali设置为:

.line 18
const-string v1, "accessibility"
invoke-virtual {p0, v1}, Lname/mdp/quickvisionmode/MainActivity;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/view/accessibility/AccessibilityManager;

.line 20
.local v0, "am":Landroid/view/accessibility/AccessibilityManager;
const/4 v1, 0x1
invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
invoke-virtual {v0, v1}, Landroid/view/accessibility/AccessibilityManager;->setmDNIeNegative(Z)Z 

(如果您知道即使在“未找到方法”的情况下也可以编译代码的方法,请发表!) ,它将起作用-不幸的是,它会触发

  

07-08 09:36:07.489:E / AndroidRuntime(20651):java.lang.RuntimeException:无法启动活动ComponentInfo {name.mdp.quickvisionmode / name.mdp.quickvisionmode.MainActivity}:java .lang.SecurityException:您不需要com.samsung.android.permission.CHANGE_DISPLAY_COLOR才能从pid = 20651,uid = 10310

调用setmDNIeNegative

但我已在清单中将许可设置为:

<?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="name.mdp.quickvisionmode" platformBuildVersionCode="23" platformBuildVersionName="6.0-2438415">
    <uses-permission android:name="com.samsung.android.permission.CHANGE_DISPLAY_COLOR"/>
    <application android:allowBackup="true" android:debuggable="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme">
        <activity android:label="@string/app_name" android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
    </application>
</manifest>

有人可以看到错误吗?

0 个答案:

没有答案