private static AppLink.Target getAndroidTargetFromJson(JSONObject targetJson) { String packageName = tryGetStringFromJson(targetJson, APP_LINK_TARGET_PACKAGE_KEY, null); if (packageName == null) { // Package name is mandatory for each Android target return null; } String className = tryGetStringFromJson(targetJson, APP_LINK_TARGET_CLASS_KEY, null); String appName = tryGetStringFromJson(targetJson, APP_LINK_TARGET_APP_NAME_KEY, null); String targetUrlString = tryGetStringFromJson(targetJson, APP_LINK_TARGET_URL_KEY, null); Uri targetUri = null; if (targetUrlString != null) { targetUri = Uri.parse(targetUrlString); } return new AppLink.Target(packageName, className, targetUri, appName); }
String appName = (String) (appNames.size() > i ? appNames.get(i).get(KEY_AL_VALUE) : null); AppLink.Target target = new AppLink.Target(packageName, className, url, appName); targets.add(target);
for (AppLink.Target target : getAppLink().getTargets()) { Intent targetIntent = new Intent(Intent.ACTION_VIEW); if (target.getUrl() != null) { targetIntent.setData(target.getUrl()); } else { targetIntent.setData(appLink.getSourceUrl()); targetIntent.setPackage(target.getPackageName()); if (target.getClassName() != null) { targetIntent.setClassName(target.getPackageName(), target.getClassName());
private static AppLink.Target getAndroidTargetFromJson(JSONObject targetJson) { String packageName = tryGetStringFromJson(targetJson, APP_LINK_TARGET_PACKAGE_KEY, null); if (packageName == null) { // Package name is mandatory for each Android target return null; } String className = tryGetStringFromJson(targetJson, APP_LINK_TARGET_CLASS_KEY, null); String appName = tryGetStringFromJson(targetJson, APP_LINK_TARGET_APP_NAME_KEY, null); String targetUrlString = tryGetStringFromJson(targetJson, APP_LINK_TARGET_URL_KEY, null); Uri targetUri = null; if (targetUrlString != null) { targetUri = Uri.parse(targetUrlString); } return new AppLink.Target(packageName, className, targetUri, appName); }
private static boolean targetsAreEqual(AppLink.Target target1, AppLink.Target target2) { boolean isEqual = objectsAreEqual(target1.getPackageName(), target2.getPackageName()) && objectsAreEqual(target1.getClassName(), target2.getClassName()) && objectsAreEqual(target1.getAppName(), target2.getAppName()) && objectsAreEqual(target1.getUrl(), target2.getUrl()) ; return isEqual; }