zoukankan      html  css  js  c++  java
  • Android 7.0以后在Settings里添加item选项

    若要app在settings里面添加一个开关选项,从Android7.0开始我们只需要在AndroidManifest里面简单设置即可。

    本文提供的是Android 7.1.1设备上运行的效果图

    先来一张效果图:

     

    完成以上功能的两个关键点:

    1. AndroidManifest的设置:

    <activity android:name=".HardKey"
                android:taskAffinity=""
                android:label="@string/app_name"
                android:icon="@drawable/ic_accessibility_generic">
    
                <intent-filter android:priority="7">
                    <action android:name ="com.android.settings.MANUFACTURER_APPLICATION_SETTING"/>
                </intent-filter>
    
            <meta-data android:name="com.android.settings.category"
                android:value="com.android.settings.category.system" />
    
            <meta-data android:name="com.android.settings.ACTIVITY_ACTION"
                android:value="com.android.settings.HardKey" />
                <meta-data android:name="com.android.settings.icon"
                    android:resource="@drawable/ic_accessibility_generic" />
    
            </activity>
    

      action 一定是 com.android.settings.MANUFACTURER_APPLICATION_SETTING

    <meta-data android:name="com.android.settings.category"
                android:value="com.android.settings.category.system" />
    这里表示要把该Item放在Settings下面的“系统”这个大类下。
    在Android 7.0上从Settings的源码可以看到有如下四个分类: 无线和网络, 设备, 个人, 系统,这些分类同样适用于Android8.0设备上。
    <string name="category_key_wireless">com.android.settings.category.wireless</string>
    <string name="category_key_device">com.android.settings.category.device</string>
    <string name="category_key_personal">com.android.settings.category.personal</string>
    <string name="category_key_system">com.android.settings.category.system</string>

     

    HardKey 继承于Activity 就是一个简单展示页面的类,点击该item可以展示一个页面。

    2.这个应用的apk一定要用系统签名。

    这些配置仅限于item展示在Settings的一级页面,二级页面我们仍然需要改动Settings的源码才可以添加进去Item。
    冰冻三尺非一日之寒。 会当凌绝顶,一览众山小。
  • 相关阅读:
    模拟按键'ESC',解决韩语等输入法对输入框(codemirror)的支持
    grpc的基础知识
    HttpClientFactory 是 HttpClient 的正确使用方式
    Workflow Core + asp.net core 5.0 实现简单审批工作流
    GitHub自动化部署(CD) asp.net core 5.0 项目(免费空间)
    CleanArchitecture Application代码生成插件-让程序员告别CURD Ctrl+C Ctrl+V
    C# 字符串转成JSON对象 反射获取属性值
    java设计模式-状态模式
    2021目前可用的百度网盘不限速下载方法
    docker映射配置文件
  • 原文地址:https://www.cnblogs.com/8988-miaoxiaohua/p/9705574.html
Copyright © 2011-2022 走看看