标签: android-settings

意图转到特定帐户的设置页面

使用以下众所周知的代码,用户将进入设备帐户的整体Android设置页面:

startActivity(new Intent(Settings.ACTION_SYNC_SETTINGS));
Run Code Online (Sandbox Code Playgroud)

同步设置

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

特定帐户同步设置

android android-intent android-settings

6
推荐指数
1
解决办法
1116
查看次数

如何在首选项屏幕上添加边距/填充

这是我的代码:

<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>
Run Code Online (Sandbox Code Playgroud)

无法简单地在PreferenceScreen元素中指定边距/填充。如何将边距/填充添加到首选项屏幕?

android android-preferences android-settings

5
推荐指数
2
解决办法
6991
查看次数

更改字体样式后,Android 应用程序在三星设备上崩溃

当我尝试更改设备的字体 (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 …
Run Code Online (Sandbox Code Playgroud)

performance android android-fonts android-fragments android-settings

5
推荐指数
1
解决办法
795
查看次数

我们如何使用espresso来测试PreferenceFragment的Android设置活动?

亲爱的堆栈溢出社区,

我们如何在onView上使用espresso 并在包含PreferenceFragment的Settings活动中执行,如下所示:http: //developer.android.com/guide/topics/ui/settings.html#Fragment

android android-espresso android-settings

5
推荐指数
1
解决办法
1668
查看次数

我可以作为设备所有者更改设置吗?(安卓4工作)

如果应用程序注册为设备所有者,则可以更改多种设置(蓝牙、卸载阻止等)。但是,与普通应用程序一样,无法更改全局设置(飞行模式、开发人员模式等)。

可以更改的设置:

作为设备所有者,有办法更改全局设置吗?或者我可以在设备设置过程中进行设置吗?

android android-settings

5
推荐指数
0
解决办法
452
查看次数

如何在开发者选项android中打开选择模拟位置应用程序?

我想让用户在启用后重定向到开发人员选项->模拟位置。我的要求是,当跟踪到任何虚假的 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");
                                        }
                                    });
}
Run Code Online (Sandbox Code Playgroud)

我尝试了这个“mock_location”,但它不会选择模拟位置应用程序。没有任何表现..

//下面这只是仅打开开发者选项。如何重定向到开发者设置中的模拟位置以关闭?

startActivity(new Intent(android.provider.Settings.ACTION_APPLICATION_DEVELOPMENT_SETTINGS));
Run Code Online (Sandbox Code Playgroud)

android android-settings android-security

5
推荐指数
0
解决办法
1973
查看次数

在 Android 的“PreferenceScreen”中调整边距/填充

我想调整 Android 中“PreferenceScreen”的默认边距/填充值,我知道不可能简单地在 XML 代码(布局文件)中设置它,但 Android 肯定会从某个地方获取这些值,并且可能(我希望)我可以设置一些“样式属性”并实现它。

我要调整的值是:

在此输入图像描述

我在网上找到了这个答案: Android:如何最大化 PreferenceFragment 宽度(或摆脱边距)?

但对我来说,它确实使用了一个非常糟糕的解决方法,我想尝试操纵一些官方参数。

有谁知道如何通过调整样式或其他一些字段来实现它?

android android-preferences preferencescreen android-styles android-settings

5
推荐指数
1
解决办法
3680
查看次数

Androidx首选项不包含RingtonePreference

我正在通过代码为我的应用程序进行设置活动,因为xml编辑器只能找到PreferenceScreen之外的任何首选项。通过代码一切工作正常,但我无法找到RingtonePreferencesAndroidx,唯一一个我觉得是从一个android.preference.RingtonePreference

我有这个实现。

implementation "androidx.preference:preference:1.1.0-alpha02"
Run Code Online (Sandbox Code Playgroud)

RingtonePreference还没有被添加?或者我可以使用另一个名称来代替其他首选项,以使用户选择通知声音。谢谢!

android android-preferences android-settings androidx

5
推荐指数
1
解决办法
561
查看次数

android.permission.WRITE_SETTINGS 是否仅授予系统应用程序?

我们目前正在开发一个应用程序,我们想更改一些系统设置,当然需要用户许可。android 文档说要做到这一点,你必须添加以下权限:

<uses-permission android:name="android.permission.WRITE_SETTINGS" />
Run Code Online (Sandbox Code Playgroud)

此外,必须明确要求用户启用此权限。摘自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-permissions android-settings

5
推荐指数
2
解决办法
2606
查看次数

如何在 Android 中以编程方式启用 NightShift/夜灯/蓝光过滤器?

我正在尝试在 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 并启用汽车模式,但显示通知,这可能不是好方法

未启用 CarMode 的 Android 夜间模式

安卓日/夜模式。UiModeManafer.getNightMode

如何以编程方式启用夜间模式?

但它讨论了实际启用/禁用黑暗主题的夜间模式。但我需要的是启用、禁用蓝光过滤器或夜灯,主要是减少从屏幕发出的蓝光。是否有任何可用的 API 可以让我更改它?

java android android-settings

5
推荐指数
0
解决办法
344
查看次数