static ResolveInfo buildResolveInfo(ComponentInfo componentInfo, IntentFilter intentFilter) { ResolveInfo info = buildResolveInfo(componentInfo); info.isDefault = intentFilter.hasCategory("android.intent.category.DEFAULT"); info.filter = new IntentFilter(intentFilter); info.priority = intentFilter.getPriority(); return info; }
if (!defaultOnly || filter.filter.hasCategory(Intent.CATEGORY_DEFAULT)) { final R oneResult = newResult(filter, match, userId); if (oneResult != null) {
private void processActivityIntent(Intent intent) { String origPackageName = null; String origClassName = null; if (intent.getComponent() != null) { origPackageName = intent.getComponent().getPackageName(); origClassName = intent.getComponent().getClassName(); } else { ResolveInfo rInfo = mContext.getPackageManager().resolveActivity(intent, 0); if (rInfo == null) { rInfo = IncrementComponentManager.resolveIntent(intent); } if (rInfo != null && rInfo.filter != null && rInfo.filter.hasCategory(Intent.CATEGORY_DEFAULT)) { origPackageName = rInfo.activityInfo.packageName; origClassName = rInfo.activityInfo.name; } } if (IncrementComponentManager.isIncrementActivity(origClassName)) { final ActivityInfo origInfo = IncrementComponentManager.queryActivityInfo(origClassName); final boolean isTransparent = hasTransparentTheme(origInfo); final String stubClassName = ActivityStubManager.assignStub(origClassName, origInfo.launchMode, isTransparent); storeAndReplaceOriginalComponentName(intent, origPackageName, origClassName, stubClassName); } }
PackageManager manager = getPackageManager(); Intent intent = new Intent(); intent.setAction(Intent.ACTION_VIEW); intent.addCategory(Intent.CATEGORY_BROWSABLE); // NOTE: Provide some data to help the Intent resolver intent.setData(Uri.parse("http://www.google.com")); // Query for all activities that match my filter and request that the filter used // to match is returned in the ResolveInfo List<ResolveInfo> infos = manager.queryIntentActivities (intent, PackageManager.GET_RESOLVED_FILTER); for (ResolveInfo info : infos) { ActivityInfo activityInfo = info.activityInfo; IntentFilter filter = info.filter; if (filter != null && filter.hasAction(Intent.ACTION_VIEW) && filter.hasCategory(Intent.CATEGORY_BROWSABLE)) { // This activity resolves my Intent with the filter I'm looking for String activityPackageName = activityInfo.packageName; String activityName = activityInfo.name; System.out.println("Activity "+activityPackageName + "/" + activityName); } } }
if (!f2.hasCategory(f1.getCategory(i))) { return false;
static ResolveInfo buildResolveInfo(Service service, IntentFilter intentFilter) { ResolveInfo info = buildResolveInfo(service); info.isDefault = intentFilter.hasCategory("Intent.CATEGORY_DEFAULT"); info.serviceInfo = service.info; info.filter = new IntentFilter(intentFilter); return info; }
static ResolveInfo buildResolveInfo(Activity activity, IntentFilter intentFilter) { ResolveInfo info = buildResolveInfo(activity); info.isDefault = intentFilter.hasCategory("Intent.CATEGORY_DEFAULT"); info.filter = new IntentFilter(intentFilter); return info; }
if ( !filter.hasCategory( iterator.next() ) ) { continue step;
if (!filter.hasCategory(iterator.next())) { continue step;
if (!filter.hasCategory(iterator.next())) { continue step;
static ResolveInfo getResolveInfo(ServiceData service, IntentFilter intentFilter, String packageName) { try { ResolveInfo info = new ResolveInfo(); info.isDefault = intentFilter.hasCategory("Intent.CATEGORY_DEFAULT"); info.serviceInfo = new ServiceInfo(); info.serviceInfo.name = service.getClassName(); info.serviceInfo.packageName = packageName; info.serviceInfo.applicationInfo = new ApplicationInfo(); info.filter = new IntentFilter(); for (Iterator<String> it = intentFilter.typesIterator(); it.hasNext(); ) { info.filter.addDataType(it.next()); } return info; } catch (IntentFilter.MalformedMimeTypeException e) { throw new RuntimeException(e); } }
if (!filter.hasCategory(iterator.next())) { continue step;
if (!defaultOnly || filter.filter.hasCategory(Intent.CATEGORY_DEFAULT)) { final R oneResult = newResult(filter, match, userId); if (oneResult != null) {
if (!defaultOnly || filter.filter.hasCategory(Intent.CATEGORY_DEFAULT)) { final R oneResult = newResult(filter, match, userId); if (oneResult != null) {
componentIntentFilters.mActivities.put(curName, curFilters); for (IntentFilter filter : curFilters) { if (filter.hasAction(ACTION_MAIN) && filter.hasCategory(CATEGORY_LAUNCHER)) { componentIntentFilters.mLauncherActivities.add(curName);
if (!f2.hasCategory(f1.getCategory(i))) { return false;
if (!f2.hasCategory(f1.getCategory(i))) { return false;