UpdateManager.java 6.52 KB
package net.hockeyapp.android;

import android.app.Activity;
import android.app.FragmentManager;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.AsyncTask.Status;
import android.text.TextUtils;
import java.lang.ref.WeakReference;
import java.util.Date;
import net.hockeyapp.android.tasks.CheckUpdateTask;
import net.hockeyapp.android.tasks.CheckUpdateTaskWithUI;
import net.hockeyapp.android.utils.AsyncTaskUtils;
import net.hockeyapp.android.utils.Util;

public class UpdateManager
{
  public static final String INSTALLER_ADB = "adb";
  private static CheckUpdateTask a = null;
  private static UpdateManagerListener b = null;
  
  private static boolean a(WeakReference<? extends Context> paramWeakReference)
  {
    boolean bool = false;
    paramWeakReference = (Context)paramWeakReference.get();
    if (paramWeakReference != null) {}
    try
    {
      paramWeakReference = paramWeakReference.getPackageManager().getInstallerPackageName(paramWeakReference.getPackageName());
      if (TextUtils.isEmpty(paramWeakReference))
      {
        if (paramWeakReference == null) {
          break label52;
        }
        bool = TextUtils.equals(paramWeakReference, "adb");
        if (bool) {
          break label52;
        }
      }
      label52:
      for (bool = true;; bool = false) {
        return bool;
      }
      return false;
    }
    catch (Throwable paramWeakReference) {}
  }
  
  private static boolean a(UpdateManagerListener paramUpdateManagerListener)
  {
    boolean bool2 = false;
    boolean bool1 = bool2;
    if (paramUpdateManagerListener != null)
    {
      paramUpdateManagerListener = paramUpdateManagerListener.getExpiryDate();
      bool1 = bool2;
      if (paramUpdateManagerListener != null)
      {
        bool1 = bool2;
        if (new Date().compareTo(paramUpdateManagerListener) > 0) {
          bool1 = true;
        }
      }
    }
    return bool1;
  }
  
  public static UpdateManagerListener getLastListener()
  {
    return b;
  }
  
  public static void register(Activity paramActivity)
  {
    String str = Util.getAppIdentifier(paramActivity);
    if (TextUtils.isEmpty(str)) {
      throw new IllegalArgumentException("HockeyApp app identifier was not configured correctly in manifest or build configuration.");
    }
    register(paramActivity, str);
  }
  
  public static void register(Activity paramActivity, String paramString)
  {
    register(paramActivity, paramString, true);
  }
  
  public static void register(Activity paramActivity, String paramString1, String paramString2, UpdateManagerListener paramUpdateManagerListener)
  {
    register(paramActivity, paramString1, paramString2, paramUpdateManagerListener, true);
  }
  
  public static void register(Activity paramActivity, String paramString1, String paramString2, UpdateManagerListener paramUpdateManagerListener, boolean paramBoolean)
  {
    paramString2 = Util.sanitizeAppIdentifier(paramString2);
    b = paramUpdateManagerListener;
    paramActivity = new WeakReference(paramActivity);
    Activity localActivity;
    if (Util.fragmentsSupported().booleanValue())
    {
      localActivity = (Activity)paramActivity.get();
      int i;
      if (localActivity != null) {
        if (localActivity.getFragmentManager().findFragmentByTag("hockey_update_dialog") != null) {
          i = 1;
        }
      }
      while (i != 0)
      {
        return;
        i = 0;
        continue;
        i = 0;
      }
    }
    boolean bool2 = a(paramUpdateManagerListener);
    if (bool2) {}
    for (boolean bool1 = paramUpdateManagerListener.onBuildExpired();; bool1 = false)
    {
      if ((bool2) && (bool1))
      {
        localActivity = (Activity)paramActivity.get();
        if (localActivity != null)
        {
          localActivity.finish();
          Intent localIntent = new Intent(localActivity, ExpiryInfoActivity.class);
          localIntent.addFlags(335544320);
          localActivity.startActivity(localIntent);
        }
      }
      if ((bool2) || (((paramUpdateManagerListener == null) || (!paramUpdateManagerListener.canUpdateInMarket())) && (a(paramActivity)))) {
        break;
      }
      if ((a == null) || (a.getStatus() == AsyncTask.Status.FINISHED))
      {
        paramActivity = new CheckUpdateTaskWithUI(paramActivity, paramString1, paramString2, paramUpdateManagerListener, paramBoolean);
        a = paramActivity;
        AsyncTaskUtils.execute(paramActivity);
        return;
      }
      a.attach(paramActivity);
      return;
    }
  }
  
  public static void register(Activity paramActivity, String paramString, UpdateManagerListener paramUpdateManagerListener)
  {
    register(paramActivity, "https://sdk.hockeyapp.net/", paramString, paramUpdateManagerListener, true);
  }
  
  public static void register(Activity paramActivity, String paramString, UpdateManagerListener paramUpdateManagerListener, boolean paramBoolean)
  {
    register(paramActivity, "https://sdk.hockeyapp.net/", paramString, paramUpdateManagerListener, paramBoolean);
  }
  
  public static void register(Activity paramActivity, String paramString, boolean paramBoolean)
  {
    register(paramActivity, paramString, null, paramBoolean);
  }
  
  public static void registerForBackground(Context paramContext, String paramString1, String paramString2, UpdateManagerListener paramUpdateManagerListener)
  {
    paramString2 = Util.sanitizeAppIdentifier(paramString2);
    b = paramUpdateManagerListener;
    paramContext = new WeakReference(paramContext);
    if ((!a(paramUpdateManagerListener)) && (((paramUpdateManagerListener != null) && (paramUpdateManagerListener.canUpdateInMarket())) || (!a(paramContext))))
    {
      if ((a == null) || (a.getStatus() == AsyncTask.Status.FINISHED))
      {
        paramContext = new CheckUpdateTask(paramContext, paramString1, paramString2, paramUpdateManagerListener);
        a = paramContext;
        AsyncTaskUtils.execute(paramContext);
      }
    }
    else {
      return;
    }
    a.attach(paramContext);
  }
  
  public static void registerForBackground(Context paramContext, String paramString, UpdateManagerListener paramUpdateManagerListener)
  {
    registerForBackground(paramContext, "https://sdk.hockeyapp.net/", paramString, paramUpdateManagerListener);
  }
  
  public static void unregister()
  {
    if (a != null)
    {
      a.cancel(true);
      a.detach();
      a = null;
    }
    b = null;
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/net/hockeyapp/android/UpdateManager.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */