本文整理汇总了Java中android.content.IntentFilter.countDataPaths方法的典型用法代码示例。如果您正苦于以下问题:Java IntentFilter.countDataPaths方法的具体用法?Java IntentFilter.countDataPaths怎么用?Java IntentFilter.countDataPaths使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android.content.IntentFilter
的用法示例。
在下文中一共展示了IntentFilter.countDataPaths方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Used to check whether there is a specialized handler for a given intent.
* @param intent The intent to check with.
* @return Whether there is a specialized handler for the given intent.
*/
private static boolean hasSpecializedHandlerIntents(Context context, Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.size() == 0) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException e) {
Log.e(TAG, "Runtime exception while getting specialized handlers");
}
return false;
}
示例2: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Used to check whether there is a specialized handler for a given intent.
* @param intent The intent to check with.
* @return Whether there is a specialized handler for the given intent.
*/
private static boolean hasSpecializedHandlerIntents(Context context, Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.size() == 0) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException ignored) {
Log.e(TAG, "Runtime exception while getting specialized handlers");
}
return false;
}
示例3: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Used to check whether there is a specialized handler for a given intent.
*
* @param intent The intent to check with.
* @return Whether there is a specialized handler for the given intent.
*/
private static boolean hasSpecializedHandlerIntents(Context context, Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.size() == 0) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException e) {
Log.e(TAG, "Runtime exception while getting specialized handlers");
}
return false;
}
示例4: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Used to check whether there is a specialized handler for a given intent.
*
* @param intent
* The intent to check with.
* @return Whether there is a specialized handler for the given intent.
*/
private static boolean hasSpecializedHandlerIntents(Context context, Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.size() == 0) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException e) {
Log.e(TAG, "Runtime exception while getting specialized handlers");
}
return false;
}
示例5: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Used to check whether there is a specialized handler for a given intent.
* @param intent The intent to check with.
* @return Whether there is a specialized handler for the given intent.
*/
private static boolean hasSpecializedHandlerIntents(Context context, Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.isEmpty()) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException e) {
Log.e(TAG, "Runtime exception while getting specialized handlers");
}
return false;
}
示例6: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
private static boolean hasSpecializedHandlerIntents(Context context, Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.size() == 0) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException e) {
Log.e("Error", "Runtime exception while getting specialized handlers");
}
return false;
}
示例7: hasSpecializedHandlerIntents
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Used to check whether there is a specialized handler for a given intent.
*
* @param intent The intent to check with.
* @return Whether there is a specialized handler for the given intent.
*/
private static boolean hasSpecializedHandlerIntents(final Context context, final Intent intent) {
try {
PackageManager pm = context.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(
intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.size() == 0) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) continue;
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0)
continue;
if (resolveInfo.activityInfo == null) continue;
return true;
}
} catch (RuntimeException e) {
Log.e(TAG, "Runtime exception while getting specialized handlers");
}
return false;
}
示例8: isSpecializedHandlerAvailable
import android.content.IntentFilter; //导入方法依赖的package包/类
/**
* Search for intent handlers that are specific to this URL aka, specialized
* apps like google maps or youtube
*/
private boolean isSpecializedHandlerAvailable(Intent intent) {
PackageManager pm = mActivity.getPackageManager();
List<ResolveInfo> handlers = pm.queryIntentActivities(intent,
PackageManager.GET_RESOLVED_FILTER);
if (handlers == null || handlers.isEmpty()) {
return false;
}
for (ResolveInfo resolveInfo : handlers) {
IntentFilter filter = resolveInfo.filter;
if (filter == null) {
// No intent filter matches this intent?
// Error on the side of staying in the browser, ignore
continue;
}
// NOTICE: Use of && instead of || will cause the browser
// to launch a new intent for every URL, using OR only
// launches a new one if there is a non-browser app that
// can handle it.
if (filter.countDataAuthorities() == 0 || filter.countDataPaths() == 0) {
// Generic handler, skip
continue;
}
return true;
}
return false;
}
示例9: getSpecializedHandlersWithFilter
import android.content.IntentFilter; //导入方法依赖的package包/类
@VisibleForTesting
static ArrayList<String> getSpecializedHandlersWithFilter(
List<ResolveInfo> infos, String filterPackageName) {
ArrayList<String> result = new ArrayList<>();
if (infos == null) {
return result;
}
for (ResolveInfo info : infos) {
IntentFilter filter = info.filter;
if (filter == null) {
// Error on the side of classifying ResolveInfo as generic.
continue;
}
if (filter.countDataAuthorities() == 0 && filter.countDataPaths() == 0) {
// Don't count generic handlers.
continue;
}
if (!TextUtils.isEmpty(filterPackageName)
&& (info.activityInfo == null
|| !info.activityInfo.packageName.equals(filterPackageName))) {
continue;
}
if (info.activityInfo != null) {
if (EPHEMERAL_INSTALLER_CLASS.equals(info.activityInfo.name)) {
// Don't consider the Instant Apps resolver a specialized application.
continue;
}
result.add(info.activityInfo.packageName);
} else {
result.add("");
}
}
return result;
}
开发者ID:rkshuai,项目名称:chromium-for-android-56-debug-video,代码行数:39,代码来源:ExternalNavigationDelegateImpl.java
示例10: buildTitle
import android.content.IntentFilter; //导入方法依赖的package包/类
String buildTitle(IntentFilter filter) {
StringBuilder buf=new StringBuilder();
boolean first=true;
if (filter.countActions() > 0) {
for (String action : in(filter.actionsIterator())) {
if (first) {
first=false;
}
else {
buf.append('/');
}
buf.append(action.replaceAll("android.intent.action.", ""));
}
}
if (filter.countDataTypes() > 0) {
first=true;
for (String type : in(filter.typesIterator())) {
if (first) {
buf.append(" : ");
first=false;
}
else {
buf.append('|');
}
buf.append(type);
}
}
if (filter.countDataSchemes() > 0) {
buf.append(" : ");
buf.append(filter.getDataScheme(0));
if (filter.countDataSchemes() > 1) {
buf.append(" (other schemes)");
}
}
if (filter.countDataPaths() > 0) {
buf.append(" : ");
buf.append(filter.getDataPath(0));
if (filter.countDataPaths() > 1) {
buf.append(" (other paths)");
}
}
return(buf.toString());
}
示例11: filterEquals
import android.content.IntentFilter; //导入方法依赖的package包/类
private boolean filterEquals(IntentFilter f1, IntentFilter f2) {
int s1 = f1.countActions();
int s2 = f2.countActions();
if (s1 != s2) {
return false;
}
for (int i = 0; i < s1; i++) {
if (!f2.hasAction(f1.getAction(i))) {
return false;
}
}
s1 = f1.countCategories();
s2 = f2.countCategories();
if (s1 != s2) {
return false;
}
for (int i = 0; i < s1; i++) {
if (!f2.hasCategory(f1.getCategory(i))) {
return false;
}
}
s1 = f1.countDataTypes();
s2 = f2.countDataTypes();
if (s1 != s2) {
return false;
}
s1 = f1.countDataSchemes();
s2 = f2.countDataSchemes();
if (s1 != s2) {
return false;
}
for (int i = 0; i < s1; i++) {
if (!f2.hasDataScheme(f1.getDataScheme(i))) {
return false;
}
}
s1 = f1.countDataAuthorities();
s2 = f2.countDataAuthorities();
if (s1 != s2) {
return false;
}
s1 = f1.countDataPaths();
s2 = f2.countDataPaths();
if (s1 != s2) {
return false;
}
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
s1 = f1.countDataSchemeSpecificParts();
s2 = f2.countDataSchemeSpecificParts();
if (s1 != s2) {
return false;
}
}
return true;
}
示例12: filterEquals
import android.content.IntentFilter; //导入方法依赖的package包/类
private boolean filterEquals(IntentFilter f1, IntentFilter f2) {
int s1 = f1.countActions();
int s2 = f2.countActions();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasAction(f1.getAction(i))) {
return false;
}
}
s1 = f1.countCategories();
s2 = f2.countCategories();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasCategory(f1.getCategory(i))) {
return false;
}
}
s1 = f1.countDataTypes();
s2 = f2.countDataTypes();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasExactDataType(f1.getDataType(i))) {
return false;
}
}
s1 = f1.countDataSchemes();
s2 = f2.countDataSchemes();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasDataScheme(f1.getDataScheme(i))) {
return false;
}
}
s1 = f1.countDataAuthorities();
s2 = f2.countDataAuthorities();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasDataAuthority(f1.getDataAuthority(i))) {
return false;
}
}
s1 = f1.countDataPaths();
s2 = f2.countDataPaths();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasDataPath(f1.getDataPath(i))) {
return false;
}
}
s1 = f1.countDataSchemeSpecificParts();
s2 = f2.countDataSchemeSpecificParts();
if (s1 != s2) {
return false;
}
for (int i=0; i<s1; i++) {
if (!f2.hasDataSchemeSpecificPart(f1.getDataSchemeSpecificPart(i))) {
return false;
}
}
return true;
}