package cn.edu.tsinghua.hpc.tcontacts.util; import java.util.List; import android.content.Context; import android.content.Intent; import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; public class TIntent { // public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.CALL_PRIVILEGED"; public static final String ACTION_CALL_PRIVILEGED = "android.intent.action.DIAL"; public static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE"; public static final String ACTION_SYNC_STATE_CHANGED = "android.intent.action.SYNC_STATE_CHANGED"; /* public static final String FILTER_CONTACTS = "cn.edu.tsinghua.hpc.tcontacts.action.FILTER_CONTACTS"; public static final String LIST_DEFAULT = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_DEFAULT"; public static final String LIST_CONTACTS = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_CONTACTS"; public static final String LIST_ALL_CONTACTS = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_ALL_CONTACTS"; public static final String LIST_CONTACTS_WITH_PHONES = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_CONTACTS_WITH_PHONES"; public static final String LIST_STARRED = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_STARRED"; public static final String LIST_FREQUENT = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_FREQUENT"; public static final String LIST_STREQUENT = "cn.edu.tsinghua.hpc.tcontacts.action.LIST_STREQUENT"; public static final String JOIN_AGGREGATE = "cn.edu.tsinghua.hpc.tcontacts.action.JOIN_AGGREGATE"; public static final String ACTION_SHOW_OR_CREATE_CONTACT = "cn.edu.tsinghua.hpc.tcontacts.action.SHOW_OR_CREATE_CONTACT"; */ public static final String ACTION_QUICK_CONTACT = "cn.edu.tsinghua.hpc.tcontacts.action.QUICK_CONTACT"; // public static final String ACTION_QUICK_CONTACT = "com.android.contacts.action.QUICK_CONTACT"; // public static final String ACTION_DIAL = "tsinghua.intent.action.DIAL"; public static final String ACTION_DIAL = "android.intent.action.DIAL"; public static final String ACTION_VIEW = "tsinghua.intent.action.VIEW"; public static final String ACTION_CALL_BUTTON = "tsinghua.intent.action.CALL_BUTTON"; public static final String ACTION_INSERT_OR_EDIT = "tsinghua.intent.action.INSERT_OR_EDIT"; public static final String ACTION_PICK = "tsinghua.intent.action.PICK"; public static final String ACTION_GET_CONTENT = "tsinghua.intent.action.GET_CONTENT"; public static final String ACTION_SEARCH = "tsinghua.intent.action.SEARCH"; public static final String ACTION_CREATE_SHORTCUT = "tsinghua.intent.action.CREATE_SHORTCUT"; public static final String ACTION_EDIT = "tsinghua.intent.action.EDIT"; public static final String ACTION_INSERT = "tsinghua.intent.action.INSERT"; public static final String ATTACH_DATA = "tsinghua.intent.action.ATTACH_DATA"; public static final String ACTION_CREATE_LIVE_FOLDER = "tsinghua.intent.action.CREATE_LIVE_FOLDER"; public static final String ACTION_SEND = "tsinghua.intent.action.SEND"; public static final String ACTION_SENDTO = "tsinghua.intent.action.SENDTO"; public static final String ACTION_SEND_MULTIPLE = "tsinghua.intent.action.SEND_MULTIPLE"; public static final String ACTION_CONTENT_CHANGED = "tsinghua.intent.action.CONTENT_CHANGED"; public static String getACTION_SENDTO(Context ctx) { if (isTMmsInstalled(ctx)) return TIntent.ACTION_SENDTO; else return Intent.ACTION_SENDTO; } public static String getACTION_SEND(Context ctx){ if (isTMmsInstalled(ctx)) return TIntent.ACTION_SEND; else return Intent.ACTION_SEND; } private static boolean isTMmsInstalled(Context ctx){ PackageManager packageManager = ctx.getPackageManager(); final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null); mainIntent.addCategory(Intent.CATEGORY_LAUNCHER); final List<ResolveInfo> apps = packageManager.queryIntentActivities(mainIntent, 0); for (int i = 0; i < apps.size(); i++) { final ResolveInfo info = apps.get(i);//get the list of apps final ActivityInfo activityInfo = info.activityInfo;//get the ActivityInfo String x = activityInfo.packageName; if(x.equals("cn.edu.tsinghua.hpc.tmms")) return true; } return false; } }