首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

获取手机装配程序的包列表

2012-10-28 
获取手机安装程序的包列表1.首先建立一个ListActivity:getPackageInfo.javapackage cn.comimport java.ut

获取手机安装程序的包列表
1.首先建立一个ListActivity:
  getPackageInfo.java

package cn.com;import java.util.List;import android.app.ListActivity;import android.content.pm.PackageInfo;import android.content.pm.PackageManager;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ListView;import android.widget.Toast;public class getPackageInfo extends ListActivity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);getInfo();}AppInstalledAdapter adapter;public void getInfo() {PackageManager pm = getPackageManager();final List<PackageInfo> appinstalled = pm.getInstalledPackages(PackageManager.GET_PERMISSIONS);adapter = new AppInstalledAdapter(this, appinstalled);setListAdapter(adapter);ListView lv = getListView();lv.setTextFilterEnabled(true);lv.setOnItemClickListener(new OnItemClickListener() {@Overridepublic void onItemClick(AdapterView<?> parent, View view,int position, long id) {PackageInfo p = appinstalled.get(position);String result = null;String[] packagePermissions = p.requestedPermissions;Log.d("AppList", p.packageName);if (packagePermissions != null) {for (int j = 0; j < packagePermissions.length; j++) {result = result + "\n" + packagePermissions[j];}}else {Log.d("AppList", p.packageName + ": no permissions");}Toast.makeText(getApplicationContext(), result,Toast.LENGTH_LONG).show();}});}}

2.然后就是适配器类:
package cn.com;import java.util.List;import android.content.Context;import android.content.pm.PackageInfo;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.TextView;public class AppInstalledAdapter extends BaseAdapter {Context mContext;List<PackageInfo> appinstalled;public AppInstalledAdapter(Context context,final List<PackageInfo> appinstalled) {mContext = context;this.appinstalled = appinstalled;}@Overridepublic int getCount() {// TODO Auto-generated method stubreturn appinstalled.size();}@Overridepublic Object getItem(int position) {// TODO Auto-generated method stubreturn position;}@Overridepublic long getItemId(int position) {// TODO Auto-generated method stubreturn position;}@Overridepublic View getView(int position, View convertView, ViewGroup parent) {TextView sv;sv = new TextView(mContext);sv.setText(appinstalled.get(position).toString());return sv;}}

热点排行