本文整理汇总了Java中android.content.pm.LauncherApps.ShortcutQuery类的典型用法代码示例。如果您正苦于以下问题:Java ShortcutQuery类的具体用法?Java ShortcutQuery怎么用?Java ShortcutQuery使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
ShortcutQuery类属于android.content.pm.LauncherApps包,在下文中一共展示了ShortcutQuery类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: query
import android.content.pm.LauncherApps.ShortcutQuery; //导入依赖的package包/类
@Override
protected List<ShortcutInfoCompat> query(int flags, String packageName, ComponentName componentName, List<String> shortcutIds, UserHandle userHandle) {
List<ShortcutInfo> shortcuts = null;
ShortcutQuery shortcutQuery = new ShortcutQuery();
shortcutQuery.setQueryFlags(flags);
if (packageName != null) {
shortcutQuery.setPackage(packageName);
shortcutQuery.setActivity(componentName);
shortcutQuery.setShortcutIds(shortcutIds);
}
try {
shortcuts = mLauncherApps.getShortcuts(shortcutQuery, userHandle);
mWasLastCallSuccess = true;
} catch (Throwable e) {
Log.e("DeepShortcutManager", "Failed to query for shortcuts", e);
mWasLastCallSuccess = false;
}
if (shortcuts == null) {
return Collections.emptyList();
}
List<ShortcutInfoCompat> shortcutList = new ArrayList<>(shortcuts.size());
for (ShortcutInfo shortcutInfoCompat : shortcuts) {
shortcutList.add(new ShortcutInfoCompat(shortcutInfoCompat));
}
return shortcutList;
}
示例2: query
import android.content.pm.LauncherApps.ShortcutQuery; //导入依赖的package包/类
/**
* Query the system server for all the shortcuts matching the given parameters.
* If packageName == null, we query for all shortcuts with the passed flags, regardless of app.
*
* TODO: Use the cache to optimize this so we don't make an RPC every time.
*/
@TargetApi(25)
private List<ShortcutInfoCompat> query(int flags, String packageName,
ComponentName activity, List<String> shortcutIds, UserHandle user) {
if (AndroidVersion.isAtLeastNougatMR1) {
ShortcutQuery q = new ShortcutQuery();
q.setQueryFlags(flags);
if (packageName != null) {
q.setPackage(packageName);
q.setActivity(activity);
q.setShortcutIds(shortcutIds);
}
List<ShortcutInfo> shortcutInfos = null;
try {
shortcutInfos = mLauncherApps.getShortcuts(q, user);
mWasLastCallSuccess = true;
} catch (SecurityException|IllegalStateException e) {
e.printStackTrace();
mWasLastCallSuccess = false;
}
if (shortcutInfos == null) {
return Collections.EMPTY_LIST;
}
List<ShortcutInfoCompat> shortcutInfoCompats = new ArrayList<>(shortcutInfos.size());
for (ShortcutInfo shortcutInfo : shortcutInfos) {
shortcutInfoCompats.add(new ShortcutInfoCompat(shortcutInfo));
}
return shortcutInfoCompats;
} else {
return Collections.EMPTY_LIST;
}
}
示例3: query
import android.content.pm.LauncherApps.ShortcutQuery; //导入依赖的package包/类
/**
* Query the system server for all the shortcuts matching the given parameters.
* If packageName == null, we query for all shortcuts with the passed flags, regardless of app.
*
* TODO: Use the cache to optimize this so we don't make an RPC every time.
*/
@TargetApi(25)
private List<ShortcutInfoCompat> query(int flags, String packageName,
ComponentName activity, List<String> shortcutIds, UserHandleCompat user) {
if (Utilities.isNycMR1OrAbove()) {
ShortcutQuery q = new ShortcutQuery();
q.setQueryFlags(flags);
if (packageName != null) {
q.setPackage(packageName);
q.setActivity(activity);
q.setShortcutIds(shortcutIds);
}
List<ShortcutInfo> shortcutInfos = null;
try {
shortcutInfos = mLauncherApps.getShortcuts(q, user.getUser());
mWasLastCallSuccess = true;
} catch (SecurityException|IllegalStateException e) {
Log.e(TAG, "Failed to query for shortcuts", e);
mWasLastCallSuccess = false;
}
if (shortcutInfos == null) {
return Collections.EMPTY_LIST;
}
List<ShortcutInfoCompat> shortcutInfoCompats = new ArrayList<>(shortcutInfos.size());
for (ShortcutInfo shortcutInfo : shortcutInfos) {
shortcutInfoCompats.add(new ShortcutInfoCompat(shortcutInfo));
}
return shortcutInfoCompats;
} else {
return Collections.EMPTY_LIST;
}
}
示例4: queryForShortcutsContainer
import android.content.pm.LauncherApps.ShortcutQuery; //导入依赖的package包/类
/**
* Gets all the manifest and dynamic shortcuts associated with the given package and user,
* to be displayed in the shortcuts container on long press.
*/
public List<ShortcutInfoCompat> queryForShortcutsContainer(ComponentName activity,
List<String> ids, UserHandle user) {
return query(ShortcutQuery.FLAG_MATCH_MANIFEST | ShortcutQuery.FLAG_MATCH_DYNAMIC,
activity.getPackageName(), activity, ids, user);
}
示例5: queryForFullDetails
import android.content.pm.LauncherApps.ShortcutQuery; //导入依赖的package包/类
@Override
public List<ShortcutInfoCompat> queryForFullDetails(String str, List<String> list, UserHandle userHandle) {
return query(ShortcutQuery.FLAG_MATCH_DYNAMIC | ShortcutQuery.FLAG_MATCH_MANIFEST | ShortcutQuery.FLAG_MATCH_PINNED,
str, null, list, userHandle);
}
示例6: queryForShortcutsContainer
import android.content.pm.LauncherApps.ShortcutQuery; //导入依赖的package包/类
@Override
public List<ShortcutInfoCompat> queryForShortcutsContainer(ComponentName componentName, List<String> list, UserHandle userHandle) {
return query(ShortcutQuery.FLAG_MATCH_DYNAMIC | ShortcutQuery.FLAG_MATCH_MANIFEST,
componentName.getPackageName(), componentName, list, userHandle);
}