溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

android 獲取手機(jī)的所有程序和widget的包名和啟動(dòng)類(lèi)名

發(fā)布時(shí)間:2020-06-24 00:05:18 來(lái)源:網(wǎng)絡(luò) 閱讀:5946 作者:Samuel_humg 欄目:移動(dòng)開(kāi)發(fā)


獲取 widget可以 AppWidgetManager 來(lái)獲取

List<AppWidgetProviderInfo>
widget=AppWidgetManager.getInstance(Context(上下文)).getInstalledProviders();

得到所有AppWidgetProviderInfo

for (int i = 0; i < widget.size(); i++) {
        AppWidgetProviderInfo info=widget.get(i);
        String packname=info.provider.getPackageName();
        String classname=info.provider.getClassName();

        Log.e("-------packname", packname);
        Log.e("-------classname", classname);

}



獲取手機(jī)里的所以程序的包名和啟動(dòng)類(lèi)名 和widget類(lèi)似.

            應(yīng)用程序的啟動(dòng)類(lèi)名,即在AndroidManifest.xml文件中<activity>中加了

             <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

            的過(guò)濾條件來(lái),指定那個(gè)類(lèi)名是啟動(dòng)的第一個(gè)activity類(lèi)




            所以我們?nèi)カ@取應(yīng)用程序的包名和啟動(dòng)類(lèi)名:

  

            Intent AppIntent = new Intent(Intent.ACTION_MAIN, null);


            AppIntent.addCategory(Intent.CATEGORY_LAUNCHER);

            
            List<ResolveInfo> resolveInfos = Context(上下文)
                    .getPackageManager().queryIntentActivities(AppIntent, 0);

            for (int i = 0; i < resolveInfos.size(); i++) {
                ResolveInfo resolveInfo = resolveInfos.get(i);
                String ClassName = resolveInfo.activityInfo.name;
                String packageName = resolveInfo.activityInfo.packageName;

                Log.e("-------packname", packageName);
                Log.e("-------classname", ClassName);}    

        這樣就可以了..!



如果還不是很清楚,下面附上deom

網(wǎng)盤(pán) http://pan.baidu.com/s/1sj4S5tV


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI