android:启动一个程序
ib_start.setOnClickListener(new OnClickListener() { public void onClick(View v) { // TODO Auto-generated method stub int posi = (Integer) myview.getTag(); ApplicationInfo appinfo; if (isAllapp){ appinfo = appInfos.get(posi); }else { appinfo= userAppInfos.get(posi); } String packname = appinfo.packageName; // Intent intent = new Intent(); // intent= packageManager.getLaunchIntentForPackage(packname); // <action android:name="android.intent.action.MAIN" /> // <category android:name="android.intent.category.LAUNCHER" /> // Intent i = new Intent(); // i.setAction("android.intent.action.MAIN"); // i.addCategory("android.intent.category.LAUNCHER"); // // List<ResolveInfo> lists = // packageManager.queryIntentActivities(i, // PackageManager.MATCH_DEFAULT_ONLY); // for(ResolveInfo list :lists){ // // } try { PackageInfo packinfo = packageManager.getPackageInfo( packname, PackageManager.GET_ACTIVITIES); ActivityInfo[] activityinfos = packinfo.activities; ActivityInfo lunchactivity = activityinfos[0]; Intent intent = new Intent(); intent.setComponent(new ComponentName(packname, lunchactivity.name)); startActivity(intent); } catch (NameNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } // if(intent==null){ // Toast.makeText(getApplicationContext(), "无法启动改应用", 1).show(); // return; // } // intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // startActivity(intent); } });