欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

7.0settings定制

程序员文章站 2022-04-01 18:54:04
android\frameworks\base\packages\SettingsLib 7.0重构Settings后多出来的部分android\frameworks\base\packages\SettingsProvider settings数据库相关android\packages\apps\Settings Settings相关android\frameworks\base\core\java\android\provider settings数据库字段定义相关android\package...

android\frameworks\base\packages\SettingsLib 7.0重构Settings后多出来的部分

android\frameworks\base\packages\SettingsProvider settings数据库相关

android\packages\apps\Settings Settings相关

android\frameworks\base\core\java\android\provider settings数据库字段定义相关

android\packages\providers\MediaProvider铃声相关

android\packages\screensavers屏保相关

android\packages\inputmethods输入法相关

android\packages\apps\Settings

  • src
    • com.android.settings Settings应用整体所用的java文件
    • com.android.settings.accessibility 辅助功能相关
    • com.android.settings.accounts 账户相关
    • com.android.settings.application 应用管理相关
    • com.android.settings.backup 备份相关
    • com.android.settings.bluetooth 蓝牙相关
    • com.android.settings.dashboard Settings主界面相关
    • com.android.settings.datausage 数据流量相关
    • com.android.settings.deletionhelper
    • com.android.settings.deviceinfo 关于手机相关
    • com.android.settings.display 显示相关
    • com.android.settings.drawable 菜单图片相关
    • com.android.settings.fingerprint 指纹相关
    • com.android.settings.fuelgauge
    • com.android.settings.gestures 手势相关
    • com.android.settings.inputmethod 输入法相关
    • com.android.settings.localepicker 语言相关
    • com.android.settings.location 位置相关
    • com.android.settings.nfc nfc相关
    • com.android.settings.notification 通知相关相关
    • com.android.settings.overlay
    • com.android.settings.password 密码相关
    • com.android.settings.print 打印相关
    • com.android.settings.qstile
    • com.android.settings.search 快速搜索相关
    • com.android.settings.sim SIM卡相关
    • com.android.settings.support
    • com.android.settings.tts tts播报相关
    • com.android.settings.users 用户相关
    • com.android.settings.utils 工具类
    • com.android.settings.voice
    • com.android.settings.vpn2
    • com.android.settings.wfd
    • com.android.settings.widget 小部件相关
    • com.android.settings.wifi wifi相关
  • AndroidManifest.xml 清单文件

settings_system.xml 所有的偏好设置对系统的所有用户公开,第三方APP有读没有写的权限;

settings_global.xml 包含各种各样的用户偏好系统设置;

settings_secure.xml 安全性的用户偏好系统设置,第三方APP有读没有写的权限

androidManifiel

<activity android:name="Settings$DataUsageSummaryActivity"

        android:label="@string/data_usage_summary_title"

        android:icon="@mipmap/ic_settings_data_usage3"

        android:taskAffinity="">

    <intent-filter>

        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.DEFAULT" />

        <category android:name="com.android.settings.SHORTCUT" />

    </intent-filter>

    <!-- 1.SettingsActivity通过该过滤器获取这个选项,priority="1"表示选项的位置顺序数字由高到底排序 -->

    <intent-filter android:priority="1">

        <action android:name="com.android.settings.action.SETTINGS" />

    </intent-filter>

    <!-- 2.表示该菜单项在 wireless的分类中 -->

    <meta-data android:name="com.android.settings.category"
        android:value="com.android.settings.category.wireless" />

    <!-- 3.启动fragment -->

    <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
        android:value="com.android.settings.datausage.DaaUsageSummary" />

    <!-- 3.启动activity -->

    <meta-data android:name="com.android.settings.ACTIVITY_ACTION"
    android:value="com.android.settings.HardKey" />



 第三方apk的 AndroidManifest.xml中添加:



<activity
            android:name=".cloud.CloudServiceActivity"

            android:exported="true"

            android:launchMode="singleInstance"

            android:screenOrientation="portrait">

            <intent-filter>

                <action android:name="com.qucii.usercenter.cloud.CloudServiceActivity" />

                <!-- 1.Settings中会通过这个action搜索到该activity -->

                <action android:name="com.android.settings.action.EXTRA_SETTINGS" />

                <category android:name="android.intent.category.DEFAULT" />

            </intent-filter>

            <!-- 2.SettingsActivity通过该过滤器获取这个选项,priority="1"表示选项的位置顺序数字由高到底排序 -->

            <intent-filter android:priority="1">

                <action android:name="com.android.settings.action.SETTINGS" />

            </intent-filter>

            <!-- 3.表示该菜单项在 wireless的分类中 -->

            <meta-data android:name="com.android.settings.category"
                android:value="com.android.settings.category.wireless" />

                <!-- 4.settings中显示的标题 -->

            <meta-data android:name="com.android.settings.title"
                android:resource="@string/app_name" />

                <!-- 5.settings中显示的描述 -->

            <meta-data android:name="com.android.settings.summary"
                android:resource="@string/app_name" />

                <!-- 6.settings中显示的图标 -->

            <meta-data android:name="com.android.settings.icon"
                android:resource="@mipmap/ic_launcher" />
        </activity>

隐藏条目:(注释掉下面条件)

       </intent-filter>  
        <intent-filter android:priority="9">//在category中的物理位置(按优先级排序时用到,并不是指第9个位置,数越大优先级越大越靠前)  
            <action android:name="com.android.settings.action.SETTINGS" />//指定此项在settings中显示  
       </intent-filter>  

隐藏suggestion

         1.suggestion_title.xml
          2.suggestion_header.xml
            两个布局直接gone掉
       DashboardAdapter.java 

7.0settings定制

隐藏 condition_card.xml 直接隐藏

隐藏二级界面:

    WirelessSettings.java 
            onCreat 里面 removePreference(KEY_TOGGLE_AIRPLANE);
    onResume 里面remove 掉WLAN设置

三级界面:

7.0settings定制

关于车机项 裁剪:
7.0settings定制

4.字符串修改,修改原来的不生效的情况下,自己重新添加字段,即可生效。

本文地址:https://blog.csdn.net/weixin_38148680/article/details/108151435

相关标签: android