使用以下众所周知的代码,用户将进入设备帐户的整体Android设置页面:
startActivity(new Intent(Settings.ACTION_SYNC_SETTINGS));

是否有相应的用户将用户直接转到特定帐户的设置(请参见下面的屏幕截图),前提是该帐户属于我的应用程序?

这是我的代码:
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" >
    <PreferenceCategory android:title="title" >
        <Preference
            android:layout="@layout/custom_preference_layout"
            android:title="@string/settings_rateUsOnGooglePlay" />
    </PreferenceCategory>
</PreferenceScreen>
无法简单地在PreferenceScreen元素中指定边距/填充。如何将边距/填充添加到首选项屏幕?
当我尝试更改设备的字体 (Samsung Galaxy Tab3) 时,应用程序出现问题,即我的应用程序崩溃。在这种情况下,当我更改字体时,应用程序正在后台运行。
脚步:
我试图在其他设备上测试这个场景,但无法重现。我的应用程序仅在三星设备上崩溃,并且仅在系统字体样式更改时崩溃。
附上崩溃日志:
07-22 12:26:09.359: E/AndroidRuntime(8110): FATAL EXCEPTION: main
07-22 12:26:09.359: E/AndroidRuntime(8110): java.lang.NullPointerException
07-22 12:26:09.359: E/AndroidRuntime(8110):     at com.acs.nomad.app.widget.h.a(Unknown Source)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at com.acs.nomad.app.b.ap.m(Unknown Source)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at com.acs.nomad.app.d.v.onPause(Unknown Source)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.FragmentManagerImpl.removeFragment(FragmentManager.java:1129)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.BackStackRecord.popFromBackStack(BackStackRecord.java:662)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.FragmentManagerImpl.popBackStackState(FragmentManager.java:1450)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.FragmentManagerImpl$2.run(FragmentManager.java:444)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1401)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at android.app.FragmentManagerImpl$1.run(FragmentManager.java:426)
07-22 12:26:09.359: E/AndroidRuntime(8110):     at …performance android android-fonts android-fragments android-settings
亲爱的堆栈溢出社区,
我们如何在onView上使用espresso 并在包含PreferenceFragment的Settings活动中执行,如下所示:http: //developer.android.com/guide/topics/ui/settings.html#Fragment
如果应用程序注册为设备所有者,则可以更改多种设置(蓝牙、卸载阻止等)。但是,与普通应用程序一样,无法更改全局设置(飞行模式、开发人员模式等)。
可以更改的设置:
作为设备所有者,有办法更改全局设置吗?或者我可以在设备设置过程中进行设置吗?
我想让用户在启用后重定向到开发人员选项->模拟位置。我的要求是,当跟踪到任何虚假的 GPS 位置时,我需要重定向到开发人员选项-> 选择模拟位置应用程序以禁用。
 if (AppUtils.isMockLocationEnabled(mLastLocation, FeedbackActivity.this)) {
   final Dialog dialog = new Dialog(FeedbackActivity.this);
                                    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
                                    dialog.setContentView(R.layout.custom_alert_response_accepted1);
                                    Button ok = (Button) dialog.findViewById(R.id.ok_button);
                                    TextView textView = (TextView) dialog.findViewById(R.id.response);
                                    textView.setText("Turn off Fake Gps");
                                    Button cancel = (Button) dialog.findViewById(R.id.Cancel_button);
                                    dialog.setCancelable(false);
                                    dialog.show();
                                    ok.setOnClickListener(new View.OnClickListener() {
                                        @Override
                                        public void onClick(View view) {
//    startActivity(new Intent(android.provider.Settings.ACTION_APPLICATION_DEVELOPMENT_SETTINGS));
             //I tried this but this is not working..
                                            Settings.Secure.getString(getContentResolver(), "mock_location");
                                        }
                                    });
}
我尝试了这个“mock_location”,但它不会选择模拟位置应用程序。没有任何表现..
//下面这只是仅打开开发者选项。如何重定向到开发者设置中的模拟位置以关闭?
startActivity(new Intent(android.provider.Settings.ACTION_APPLICATION_DEVELOPMENT_SETTINGS));
我想调整 Android 中“PreferenceScreen”的默认边距/填充值,我知道不可能简单地在 XML 代码(布局文件)中设置它,但 Android 肯定会从某个地方获取这些值,并且可能(我希望)我可以设置一些“样式属性”并实现它。
我要调整的值是:
我在网上找到了这个答案: Android:如何最大化 PreferenceFragment 宽度(或摆脱边距)?
但对我来说,它确实使用了一个非常糟糕的解决方法,我想尝试操纵一些官方参数。
有谁知道如何通过调整样式或其他一些字段来实现它?
android android-preferences preferencescreen android-styles android-settings
我正在通过代码为我的应用程序进行设置活动,因为xml编辑器只能找到PreferenceScreen之外的任何首选项。通过代码一切工作正常,但我无法找到RingtonePreferences从Androidx,唯一一个我觉得是从一个android.preference.RingtonePreference。
我有这个实现。
implementation "androidx.preference:preference:1.1.0-alpha02"
RingtonePreference还没有被添加?或者我可以使用另一个名称来代替其他首选项,以使用户选择通知声音。谢谢!
我们目前正在开发一个应用程序,我们想更改一些系统设置,当然需要用户许可。android 文档说要做到这一点,你必须添加以下权限:
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
此外,必须明确要求用户启用此权限。摘自https://developer.android.com/reference/android/Manifest.permission#WRITE_SETTINGS说:
注意:如果应用以 API 级别 23 或更高级别为目标,应用用户必须通过权限管理屏幕向应用明确授予此权限。该应用程序通过发送带有 action 的意图来请求用户的批准
Settings.ACTION_MANAGE_WRITE_SETTINGS。应用程序可以通过调用 来检查它是否具有此授权Settings.System.canWrite()。
到此为止,已经很清楚了。但是,当将权限添加到AndroidManifest.xml文件时,Android Studio 会抱怨“权限仅授予系统应用程序”。现在,这令人困惑,因为我还没有找到任何说明它确实只授予系统应用程序的文档。
所以,我想问一下是否有人遇到过这个问题,是否有某种文档详细解释了这一点?或者我只是错过了什么?
我正在尝试在 Android 中以编程方式启用蓝光过滤器。android 中是否有任何 API 或函数可以帮助我启用/禁用/安排蓝光过滤器选项?
为了澄清起见,该功能在 iPhone 中称为Night Shift,在 Google Pixels 中称为Night Light,在三星 Galaxy 中称为蓝光过滤器。也可能有其他名称。它减少了屏幕发出的蓝光,使眼睛看屏幕的压力更小,有助于睡眠。
到目前为止,我在 developer.android.com 上搜索过,我遇到了以下问题:
https://developer.android.com/reference/android/app/UiModeManager
但是,当我尝试在运行 Android 10 的设备上使用它时,没有任何变化。我在 API 上发现了以下有关 Stackoverflow 的问题:
实现 Android 夜间模式,使用 UiModeManager 并启用汽车模式,但显示通知,这可能不是好方法
安卓日/夜模式。UiModeManafer.getNightMode
但它讨论了实际启用/禁用黑暗主题的夜间模式。但我需要的是启用、禁用蓝光过滤器或夜灯,主要是减少从屏幕发出的蓝光。是否有任何可用的 API 可以让我更改它?