安卓11客制需求:<MtkSettings:添加桌面设置,并且能够正常切换桌面APK>

需要修改的路径代码路径:vendor/mediatek/proprietary/packages/apps/MtkSettings/AndroidManifest.xml

		 <!-- 注册一个activity,用于启动 com.android.internal.app.ResolverActivity -->
        <!-- gyh add -->
       <activity android:name=".SetLauncherActivity"
                    android:label="桌面设置"
                    android:taskAffinity="">
                <intent-filter android:priority="1">
                    <action android:name="com.android.settings.SETLAUNCHERACTIVITY" />
                    <action android:name="android.settings.SETLAUNCHERACTIVITY" />
                    <category android:name="android.intent.category.DEFAULT" />
                </intent-filter>
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.DEFAULT" />
                    <category android:name="android.intent.category.VOICE_LAUNCH" />
                    <category android:name="com.android.settings.SHORTCUT" />
                </intent-filter>
        
                <intent-filter android:priority="100">
                    <action android:name="com.android.settings.action.SETTINGS" />
                </intent-filter>
                <!--此项在主setting位置(ia.homepage)  -->
                <meta-data android:name="com.android.settings.category"
                    android:value="com.android.settings.category.ia.homepage" />

                <meta-data android:name="com.android.settings.ACTIVITY_ACTION"
                    android:value="com.android.settings.SETLAUNCHERACTIVITY" />
                
                <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                    android:value="true" />
            </activity>
       <!--  end -->

SetLauncherActivity.java的路径:vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings
详细代码:

package com.android.settings;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;

public class SetLauncherActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.setLauncher);
        Intent intent = new Intent();
        intent.setAction(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_HOME);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        intent.setClassName("android","com.android.internal.app.ResolverActivity");
        startActivity(intent);
    }
}

setLauncher.xml的路径:vendor/mediatek/proprietary/packages/apps/MtkSettings/res/layout
详细代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="match_parent">   
</LinearLayout>

编译刷机完成之后打开设置,可以看到桌面设置菜单项

在这里插入图片描述

点击它

在这里插入图片描述
这样就完成了这个需求

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值