Stick Squad 3 v1.2.5.9版本的 MD5 值为:375cf7f77a7075270cd68d1397368279
以下内容为反编译后的 Presage.java 源代码,内容仅作参考
package io.presage;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.Handler;
import io.presage.e.g;
import io.presage.services.PresageServiceImp;
import io.presage.services.e;
import io.presage.utils.IADHandler;
import io.presage.utils.f;
import io.presage.utils.h;
import io.presage.utils.i;
import io.presage.utils.j;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CopyOnWriteArrayList;
import shared_presage.com.google.gson.Gson;
public class Presage {
private static Presage b = null;
private String d;
private String g;
private String h;
private IADHandler k;
private Context l;
private e m;
private io.presage.utils.b.a n;
private Boolean f450c = true;
private io.presage.utils.b.b.a j = new a(this);
private List e = new ArrayList();
private List f = new ArrayList();
private CopyOnWriteArrayList i = new CopyOnWriteArrayList();
Handler a = new Handler();
public static Presage getInstance() {
if (b == null) {
b = new Presage();
i.b("Create instance");
}
return b;
}
private Presage() {
}
public Boolean isLocked() {
return this.f450c;
}
public void setLock(Boolean bool) {
this.f450c = bool;
}
public void runOnUiThread(Runnable runnable) {
this.a.post(runnable);
}
private void getMetas() {
PackageManager packageManager = getContext().getPackageManager();
String packageName = getContext().getPackageName();
boolean z = true;
StringBuilder sb = new StringBuilder();
sb.append("[Missing permission(s)] : ");
PackageManager.NameNotFoundException length = sb.length();
try {
length = packageManager.getPackageInfo(packageName, 4135);
for (String str : f.a) {
z &= h.a(length, str, sb);
}
if (sb.length() == length) {
sb.replace(0, sb.length() - 1, "");
}
int length2 = sb.length();
sb.append("[Missing activity] : ");
int length3 = sb.length();
for (String str2 : f.b) {
z &= h.b(length, str2, sb);
}
if (sb.length() == length3) {
sb.replace(length2 - 1, sb.length() - 1, "");
}
int length4 = sb.length();
sb.append("[Missing receiver] : ");
int length5 = sb.length();
for (String str3 : f.f482c) {
z &= h.c(length, str3, sb);
}
if (sb.length() == length5) {
sb.replace(length4 - 1, sb.length() - 1, "");
}
int length6 = sb.length();
sb.append("[Missing service] : ");
int length7 = sb.length();
for (String str4 : f.d) {
z &= h.d(length, str4, sb);
}
if (sb.length() == length7) {
sb.replace(length6 - 1, sb.length() - 1, "");
}
if (!z) {
throw new RuntimeException(sb.toString());
}
} catch (PackageManager.NameNotFoundException unused) {
length.printStackTrace();
}
try {
Bundle bundle = getContext().getPackageManager().getApplicationInfo(getContext().getPackageName(), 128).metaData;
this.h = bundle.getString("presage_env");
String obj = bundle.get("presage_key").toString();
if (obj == null || obj.equals("API_KEY_HERE")) {
throw new IllegalStateException("You must define 'presage_key' in your application meta-data !");
}
setKey(obj);
startPublishersSession();
addTmpPublishers(obj);
} catch (PackageManager.NameNotFoundException e) {
i.d("Failed to load meta-data, NameNotFound: ", e.getMessage());
} catch (NullPointerException e2) {
i.d("Failed to load meta-data, NullPointer: ", e2.getMessage());
}
}
public String getKey() {
return this.d;
}
public void setKey(String str) {
this.d = str;
if (this.e.size() <= 0) {
this.e = new ArrayList();
this.e.add(str);
}
}
public List getAppsPublishers() {
return this.e;
}
public void setAppsPublishers(List list) {
this.e = list;
}
public void startPublishersSession() {
if (this.f.size() > 0) {
this.e = this.f;
}
Integer valueOf = Integer.valueOf(Integer.parseInt(getKey()));
Integer num = valueOf;
Iterator it = this.e.iterator();
while (it.hasNext()) {
num = Integer.valueOf(Math.max(num.intValue(), Integer.valueOf(Integer.parseInt((String) it.next())).intValue()));
}
setLock(Boolean.valueOf(!valueOf.equals(num)));
this.f = new ArrayList();
}
public void addTmpPublishers(String str) {
if (!this.f.contains(str)) {
this.f.add(str);
}
}
public String getId() {
if (this.g == null) {
SharedPreferences sharedPreferences = getContext().getSharedPreferences("presage", 0);
this.g = sharedPreferences.getString("id", null);
String string = sharedPreferences.getString("filters", null);
if (string != null) {
g.a();
io.presage.e.e a = g.a("filters", "filters");
a.a((Map) new Gson().fromJson(string, Map.class));
a.a();
}
}
return this.g;
}
public void setId(String str) {
this.g = str;
SharedPreferences.Editor edit = getContext().getSharedPreferences("presage", 0).edit();
edit.putString("id", str);
edit.commit();
}
public String getEnv() {
if (this.h == null) {
this.h = "production";
}
return this.h;
}
public void setEnv(String str) {
this.h = str;
}
public String getApiUrl(String str) {
if (getEnv().equals("development")) {
return j.a("http://wsback-%s.ogury.local/v1/%s", str);
}
if (getEnv().equals("staging")) {
return j.a("http://wsback-%s.staging.presage.io/v1/%s", str);
}
if (getEnv().equals("production")) {
return j.a("http://wsback-%s.presage.io/v1/%s", str);
}
return j.a("http://wsback-%s.presage.io/v1/%s", str);
}
public void pushAd(io.presage.b.e eVar) {
this.i.add(eVar);
}
public void removeAd(io.presage.b.e eVar) {
this.i.remove(eVar);
}
public synchronized void notifyAds(String str, String str2) {
Iterator it = this.i.iterator();
while (it.hasNext()) {
((io.presage.b.e) it.next()).a(str, str2);
}
}
public void start() {
i.b("start");
if (!getWS().a()) {
i.d("Start stopped because your Android Version is too old (< 11) or you just got killed!");
return;
}
Intent intent = new Intent();
intent.setClass(getContext(), PresageServiceImp.class);
getContext().startService(intent);
if (getService() != null) {
getService().b();
}
((AlarmManager) getContext().getSystemService(Context.ALARM_SERVICE)).setRepeating(0, System.currentTimeMillis(), 600000L, PendingIntent.getBroadcast(getContext(), 0, new Intent("io.presage.receivers.BootReceiver.RESTART_SERVICE"), 0));
getContext().sendBroadcast(new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_HOME));
}
public void pause() {
if (getService() != null) {
getService().c();
}
}
public void restart() {
if (getService() != null) {
getService().b();
} else {
start();
}
}
public void adToServe(String str, IADHandler iADHandler) {
adToServe(str, new HashMap(), iADHandler);
}
public void notifyAdClosed() {
this.j.a();
}
public void adToServe(String str, Map map, IADHandler iADHandler) {
this.k = iADHandler;
map.put("type", str);
getWS().a("ad_to_serve", map, new b(this));
}
public Context getContext() {
return this.l;
}
public void setContext(Context context) {
this.l = context.getApplicationContext();
getMetas();
}
public e getService() {
return this.m;
}
public void setService(e eVar) {
this.m = eVar;
}
public io.presage.utils.b.a getWS() {
if (this.n == null) {
this.n = new io.presage.utils.b.b();
}
return this.n;
}
public void setWS(io.presage.utils.b.a aVar) {
this.n = aVar;
}
}