亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android7.0中怎么使用 MTK設置默認桌面

發布時間:2021-06-15 14:52:45 來源:億速云 閱讀:229 作者:Leah 欄目:移動開發

本篇文章為大家展示了Android7.0中怎么使用 MTK設置默認桌面,內容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

1.找到安裝應用的文件

frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java

 try {
   PackageParser.Package newPackage = scanPackageTracedLI(pkg, policyFlags, scanFlags,
     System.currentTimeMillis(), user);

   updateSettingsLI(newPackage, installerPackageName, null, res, user);

   if (res.returnCode == PackageManager.INSTALL_SUCCEEDED) {
 
 
    prepareAppDataAfterInstallLIF(newPackage);
 

 Log.d("yh", "pkgName " +pkgName);
 // 由于客戶的應用保密 這里使用點心桌面的包名---com.dianxinos.dxhome
 if (pkgName.equals("com.dianxinos.dxhome")){
  //發送廣播
  Intent intent = new  Intent("android.intent.action.UPDATE_LANUCHER_APPS");
  mContext.sendBroadcast(intent);
 }
    //------------------------


   } else {
    // Remove package from internal structures, but keep around any
    // data that might have already existed
    deletePackageLIF(pkgName, UserHandle.ALL, false, null,
      PackageManager.DELETE_KEEP_DATA, res.removedInfo, true, null);
   }
  } catch (PackageManagerException e) {
   res.setError("Package couldn't be installed in " + pkg.codePath, e);
  }

  Trace.traceEnd(TRACE_TAG_PACKAGE_MANAGER);
 }

2.由于設置默認桌面時,是在Settings中設置的所以廣播接收者在settings中添加并設置默認桌面(添加文件–packages\apps\Settings\src\com\android\settings下—UpdateLanucherReceiver.java)

package com.android.settings;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.ComponentName;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import java.util.ArrayList;
import android.util.Log;
import android.content.pm.ActivityInfo;
import java.util.List;


public class UpdateLanucherReceiver extends BroadcastReceiver {
 
 public UpdateLanucherReceiver() {
 }
 
 @Override
 public void onReceive(Context context, Intent intent) {
  if (intent.getAction().equals("android.intent.action.UPDATE_LANUCHER_APPS")) {
 Log.e("yhyh" ," onReceive");
 
 final PackageManager mPm = context.getPackageManager();

   // 點心桌面的包名類名 com.dianxinos.dxhome / com.nd.hilauncherdev.launcher.Launcher設置默認桌面
 ComponentName DefaultLauncher=new ComponentName(" com.dianxinos.dxhome",
     "com.nd.hilauncherdev.launcher.Launcher");
   ArrayList<ResolveInfo> homeActivities = new ArrayList<ResolveInfo>();
   ComponentName currentDefaultHome = mPm.getHomeActivities(homeActivities);

   ComponentName[]mHomeComponentSet = new ComponentName[homeActivities.size()];
   for (int i = 0; i < homeActivities.size(); i++) {
    final ResolveInfo candidate = homeActivities.get(i);
    Log.e("yhyh","homeActivitie: candidate = "+candidate);
    final ActivityInfo activityInfo= candidate.activityInfo;
    ComponentName activityName = new ComponentName(activityInfo.packageName, activityInfo.name);
    mHomeComponentSet[i] = activityName;
   }
   IntentFilter mHomeFilter = new IntentFilter(Intent.ACTION_MAIN);
   mHomeFilter.addCategory(Intent.CATEGORY_HOME);
   mHomeFilter.addCategory(Intent.CATEGORY_DEFAULT);
   List<ComponentName>Activities=new ArrayList();
   mPm.replacePreferredActivity(mHomeFilter, IntentFilter.MATCH_CATEGORY_EMPTY,mHomeComponentSet, DefaultLauncher);
   
 //刷新桌面
  Intent intent2 = new Intent(Intent.ACTION_MAIN);
   intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   intent2.addCategory(Intent.CATEGORY_HOME);
   context.startActivity(intent2);
 }
 }
}

3.packages\apps\Settings\AndroidManifest.xml

<!-- yh -->
 <receiver
   android:name=".UpdateLanucherReceiver" >
   <intent-filter>
    <action android:name="android.intent.action.UPDATE_LANUCHER_APPS" />
   </intent-filter>
</receiver>

上述內容就是Android7.0中怎么使用 MTK設置默認桌面,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

项城市| 玉山县| 尼勒克县| 朝阳区| 常州市| 乌拉特前旗| 光山县| 泰顺县| 赤城县| 马尔康县| 长岛县| 衡水市| 株洲县| 涞水县| 泌阳县| 洛隆县| 东台市| 社旗县| 永平县| 二手房| 长汀县| 新建县| 上蔡县| 稻城县| 黎平县| 江川县| 军事| 庆城县| 得荣县| 陆河县| 南漳县| 雷州市| 乌拉特后旗| 乌拉特中旗| 元氏县| 报价| 昭通市| 双鸭山市| 广西| 廉江市| 区。|