• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

android PackageManager的使用如何获开第三方应用程序(包)的信息,求大神指

我只写出了系统的应用程序(包)的信息,第三方的没有出来,怎么办,求解
public class MainActivity extends Activity {
        List appInfos;


        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_main);
                ListView listView = (ListView) findViewById(R.id.listView1);
                appInfos = getData();
                AppInfoAdapter aia = new AppInfoAdapter(this);
                listView.setAdapter(aia);
        }


        public List getData() {
                List listAppInfos = new ArrayList();
                PackageManager pm = getPackageManager();
                Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
                List resolveInfos = pm.queryIntentActivities(mainIntent,PackageManager.MATCH_DEFAULT_ONLY);
                Collections.sort(resolveInfos,new ResolveInfo.DisplayNameComparator(pm));
                if (listAppInfos != null) {
                        listAppInfos.clear();
                        for (ResolveInfo reInfo : resolveInfos) {
                                String activityName = reInfo.activityInfo.name;
                                String pkgName = reInfo.activityInfo.packageName;
                                String appLabel = (String) reInfo.loadLabel(pm);
                                Drawable icon = reInfo.loadIcon(pm);
                                Intent launchIntent = new Intent();
                                launchIntent.setComponent(new ComponentName(pkgName,activityName));
                                AppInfo appInfo = new AppInfo();
                                appInfo.setAppLabel(appLabel);
                                appInfo.setPkgName(pkgName);
                                appInfo.setAppIcon(icon);
                                listAppInfos.add(appInfo);


                        }
                }
                return listAppInfos;
        }


        static class ViewHoler {
                ImageView imageView1;
                TextView textView1;
                TextView textView2;


        }


        class AppInfoAdapter extends BaseAdapter {
                LayoutInflater miInflater;


                public AppInfoAdapter(Context context) {
                        miInflater = LayoutInflater.from(MainActivity.this);


                }


                @Override
                public int getCount() {
                        // TODO Auto-generated method stub
                        return appInfos.size();
                }


                @Override
                public Object getItem(int arg0) {
                        // TODO Auto-generated method stub
                        return appInfos.get(arg0);
                }


                @Override
                public long getItemId(int arg0) {
                        // TODO Auto-generated method stub
                        return arg0;
                }


                @Override
                public View getView(int arg0, View arg1, ViewGroup arg2) {
                        ViewHoler viewHoler;
                        if (arg1 == null) {
                                viewHoler = new ViewHoler();
                                arg1 = miInflater.inflate(R.layout.ietm, null);
                                viewHoler.textView1 = (TextView) arg1
                                                .findViewById(R.id.textView1);
                                viewHoler.textView2 = (TextView) arg1
                                                .findViewById(R.id.textView2);
                                viewHoler.imageView1 = (ImageView) arg1
                                                .findViewById(R.id.imageView1);
                                arg1.setTag(viewHoler);
                        } else {
                                viewHoler = (ViewHoler) arg1.getTag();
                        }
                        viewHoler.textView1.setText(appInfos.get(arg0).getAppLabel());
                        viewHoler.textView2.setText(appInfos.get(arg0).getPkgName());
                        viewHoler.imageView1.setImageDrawable(appInfos.get(arg0)
                                        .getAppIcon());


                        return arg1;
                }


                public boolean onCreateOptionsMenu(Menu menu) {
                        // Inflate the menu; this adds items to the action bar if it is
                        // present.
                        getMenuInflater().inflate(R.menu.main, menu);
                        return true;
                }


        }
}

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

全部参与1

获开第三方的?这个不行把

使用道具 举报

发新帖

发布任务需求已有1031288位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!