Exemplo n.º 1
0
  private boolean handleResolveInfo(
      ResolveInfo resolveInfo, String urlAsString, long urlLoadStartTime) {
    if (Settings.get().didRecentlyRedirectToApp(urlAsString)) {
      return false;
    }

    boolean isLinkBubble =
        resolveInfo.activityInfo != null
            && resolveInfo.activityInfo.packageName.equals(mAppPackageName);
    if (isLinkBubble == false
        && MainApplication.loadResolveInfoIntent(mContext, resolveInfo, urlAsString, -1)) {
      if (getActiveTabCount() == 0 && Prompt.isShowing() == false) {
        finish();
      }

      String title =
          String.format(
              mContext.getString(R.string.link_loaded_with_app),
              resolveInfo.loadLabel(mContext.getPackageManager()));
      MainApplication.saveUrlInHistory(mContext, resolveInfo, urlAsString, title);
      Settings.get().addRedirectToApp(urlAsString);
      Settings.get()
          .trackLinkLoadTime(
              System.currentTimeMillis() - urlLoadStartTime,
              Settings.LinkLoadType.AppRedirectInstant,
              urlAsString);
      return true;
    }

    return false;
  }