Advertisement
Guest User

com/funketapps/games/GameActivity.java

a guest
Oct 12th, 2017
206
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 32.99 KB | None | 0 0
  1. /*
  2.  * Decompiled with CFR 0_123.
  3.  *
  4.  * Could not load the following classes:
  5.  *  android.annotation.SuppressLint
  6.  *  android.app.Activity
  7.  *  android.app.AlertDialog
  8.  *  android.app.AlertDialog$Builder
  9.  *  android.app.NativeActivity
  10.  *  android.content.Context
  11.  *  android.content.DialogInterface
  12.  *  android.content.DialogInterface$OnCancelListener
  13.  *  android.content.DialogInterface$OnClickListener
  14.  *  android.content.Intent
  15.  *  android.content.pm.PackageInfo
  16.  *  android.content.pm.PackageManager
  17.  *  android.content.res.Configuration
  18.  *  android.content.res.Resources
  19.  *  android.net.Uri
  20.  *  android.os.Bundle
  21.  *  android.os.Environment
  22.  *  android.os.Handler
  23.  *  android.os.IBinder
  24.  *  android.os.Message
  25.  *  android.text.Editable
  26.  *  android.util.DisplayMetrics
  27.  *  android.util.Log
  28.  *  android.view.KeyEvent
  29.  *  android.view.View
  30.  *  android.view.ViewGroup
  31.  *  android.view.ViewGroup$LayoutParams
  32.  *  android.view.WindowManager
  33.  *  android.view.WindowManager$LayoutParams
  34.  *  android.view.inputmethod.InputMethodManager
  35.  *  android.widget.EditText
  36.  *  android.widget.TextView
  37.  *  android.widget.TextView$OnEditorActionListener
  38.  *  android.widget.Toast
  39.  */
  40. package com.funketapps.games;
  41.  
  42. import android.annotation.SuppressLint;
  43. import android.app.Activity;
  44. import android.app.AlertDialog;
  45. import android.app.NativeActivity;
  46. import android.content.Context;
  47. import android.content.DialogInterface;
  48. import android.content.Intent;
  49. import android.content.pm.PackageInfo;
  50. import android.content.pm.PackageManager;
  51. import android.content.res.Configuration;
  52. import android.content.res.Resources;
  53. import android.net.Uri;
  54. import android.os.Bundle;
  55. import android.os.Environment;
  56. import android.os.Handler;
  57. import android.os.IBinder;
  58. import android.os.Message;
  59. import android.text.Editable;
  60. import android.util.DisplayMetrics;
  61. import android.util.Log;
  62. import android.view.KeyEvent;
  63. import android.view.View;
  64. import android.view.ViewGroup;
  65. import android.view.WindowManager;
  66. import android.view.inputmethod.InputMethodManager;
  67. import android.widget.EditText;
  68. import android.widget.TextView;
  69. import android.widget.Toast;
  70. import com.adcolony.sdk.AdColony;
  71. import com.adcolony.sdk.AdColonyAdOptions;
  72. import com.adcolony.sdk.AdColonyInterstitial;
  73. import com.adcolony.sdk.AdColonyInterstitialListener;
  74. import com.adcolony.sdk.AdColonyUserMetadata;
  75. import com.adcolony.sdk.AdColonyZone;
  76. import com.facebook.ads.Ad;
  77. import com.facebook.ads.AdError;
  78. import com.facebook.ads.AdListener;
  79. import com.facebook.ads.AdView;
  80. import com.facebook.ads.InterstitialAdListener;
  81. import com.funketapps.games.WebViewActivity;
  82. import com.google.android.gms.ads.AdRequest;
  83. import com.google.android.gms.ads.AdSize;
  84. import com.google.android.gms.ads.InterstitialAd;
  85. import com.vungle.publisher.EventListener;
  86. import com.vungle.publisher.VunglePub;
  87. import java.io.File;
  88. import java.io.PrintStream;
  89. import java.io.UnsupportedEncodingException;
  90. import java.net.Inet4Address;
  91. import java.net.InetAddress;
  92. import java.net.NetworkInterface;
  93. import java.util.Collections;
  94. import java.util.Enumeration;
  95. import java.util.Iterator;
  96. import java.util.Locale;
  97. import java.util.concurrent.ConcurrentLinkedQueue;
  98.  
  99. @SuppressLint(value={"NewApi"})
  100. public class GameActivity
  101. extends NativeActivity {
  102.     private static String AdColonyZoonID;
  103.     static AdColonyAdOptions AdColony_ad_options;
  104.     static AdColonyInterstitialListener AdColonylistener;
  105.     static GameActivity CONTEXT;
  106.     static String Entry_AdmobBarnnerId;
  107.     static String Entry_AdmobFullId;
  108.     private static String FullAdsOrder;
  109.     private static int FullAdsOrderIndex;
  110.     private static String HTTP_URL;
  111.     static boolean INIT_ADMOB;
  112.     static int MSG1_NULL;
  113.     static int MSG2_BANNER;
  114.     static int MSG3_FULL;
  115.     static int MSG4_INV_FULL;
  116.     static int MSG5_INGAME;
  117.     static int MSG6_REWARD;
  118.     static int MSG7_AD_TYPE_PAD_BANNER;
  119.     static int MSG8_NEW_GAME;
  120.     static int MSG9_AD_ON_LEAVE_GAME;
  121.     static int MSG_EDITBOX;
  122.     static int MSG_OPEN_URL;
  123.     static int MSG_PROMOTE;
  124.     private static boolean ShowBannerAds;
  125.     static String TAG;
  126.     private static String THE_URL;
  127.     static String The_App_Path;
  128.     static String The_Sdcard_Path;
  129.     private static AdColonyInterstitial adColonyInterstitial;
  130.     @SuppressLint(value={"NewApi"})
  131.     static Handler adHander;
  132.     private static com.google.android.gms.ads.AdView adView;
  133.     private static AdView adView_fb;
  134.     private static boolean adView_fb_loaded;
  135.     static int adcolony_load_cnt;
  136.     static int freeUnlockCnt;
  137.     private static InterstitialAd interstitial;
  138.     private static com.facebook.ads.InterstitialAd interstitialAd_fb;
  139.     private static ConcurrentLinkedQueue<Runnable> jobs;
  140.     static Handler sHandler;
  141.     static EditBoxMessage sMsg;
  142.     static final VunglePub vunglePub;
  143.     MyAdListener theAdListener;
  144.     private final EventListener vungleListener;
  145.  
  146.     static {
  147.         vunglePub = VunglePub.getInstance();
  148.         interstitialAd_fb = null;
  149.         adView_fb = null;
  150.         adView_fb_loaded = false;
  151.         AdColonyZoonID = "vz53350640a38b4054b4";
  152.         adColonyInterstitial = null;
  153.         AdColonylistener = null;
  154.         AdColony_ad_options = null;
  155.         adcolony_load_cnt = 0;
  156.         ShowBannerAds = true;
  157.         Entry_AdmobBarnnerId = "ca-app-pub-9865823925726470/3374429543";
  158.         Entry_AdmobFullId = "ca-app-pub-9865823925726470/4851162749";
  159.         TAG = "Hello";
  160.         MSG1_NULL = 0;
  161.         MSG2_BANNER = 1;
  162.         MSG3_FULL = 2;
  163.         MSG4_INV_FULL = 3;
  164.         MSG5_INGAME = 4;
  165.         MSG6_REWARD = 5;
  166.         MSG7_AD_TYPE_PAD_BANNER = 6;
  167.         MSG8_NEW_GAME = 7;
  168.         MSG9_AD_ON_LEAVE_GAME = 7;
  169.         MSG_PROMOTE = 88;
  170.         MSG_OPEN_URL = 89;
  171.         INIT_ADMOB = false;
  172.         freeUnlockCnt = 0;
  173.         FullAdsOrder = "vfag";
  174.         FullAdsOrderIndex = 0;
  175.         adHander = new Handler(){
  176.  
  177.             /*
  178.              * Unable to fully structure code
  179.              * Enabled aggressive block sorting
  180.              * Enabled unnecessary exception pruning
  181.              * Enabled aggressive exception aggregation
  182.              * Lifted jumps to return sites
  183.              */
  184.             public void handleMessage(Message var1_1) {
  185.                 System.err.println("xxxxxx" + var1_1.what);
  186.                 if (var1_1.what == GameActivity.MSG3_FULL || var1_1.what == GameActivity.MSG4_INV_FULL) {
  187.                     GameActivity.access$000(GameActivity.CONTEXT, "play full");
  188.                     GameActivity.access$700();
  189.                     return;
  190.                 }
  191.                 if (var1_1.what == GameActivity.MSG6_REWARD) {
  192.                     System.out.println("type==play reward \u9700\u8981\u8c03\u6574");
  193.                     GameActivity.access$700();
  194.                     return;
  195.                 }
  196.                 if (var1_1.what == GameActivity.MSG2_BANNER) {
  197.                     GameActivity.access$800();
  198.                     return;
  199.                 }
  200.                 if (var1_1.what == GameActivity.MSG1_NULL || var1_1.what == GameActivity.MSG7_AD_TYPE_PAD_BANNER) {
  201.                     if (GameActivity.access$900() == false) return;
  202.                     GameActivity.access$1000().setVisibility(4);
  203.                     GameActivity.access$1100().setVisibility(4);
  204.                     return;
  205.                 }
  206.                 var2_4 = var1_1.what;
  207.                 var3_5 = GameActivity.MSG_OPEN_URL;
  208.                 ** if (var2_4 != var3_5) goto lbl-1000
  209. lbl-1000: // 1 sources:
  210.                 {
  211.                     try {
  212.                         var1_1 = new Intent((Context)GameActivity.CONTEXT, WebViewActivity.class);
  213.                         GameActivity.CONTEXT.startActivity((Intent)var1_1);
  214.                         return;
  215.                     }
  216.                     catch (Exception var1_3) {
  217.                         var1_3.printStackTrace();
  218.                         return;
  219.                     }
  220.                 }
  221. lbl-1000: // 1 sources:
  222.                 {
  223.                 }
  224.                 {
  225.                     catch (Exception var1_2) {
  226.                         var1_2.printStackTrace();
  227.                         return;
  228.                     }
  229.                 }
  230.                 if (var1_1.what != GameActivity.MSG_PROMOTE) return;
  231.                 GameActivity.access$1200(GameActivity.CONTEXT);
  232.             }
  233.         };
  234.         CONTEXT = null;
  235.         The_App_Path = null;
  236.         The_Sdcard_Path = null;
  237.         sMsg = null;
  238.         MSG_EDITBOX = 1;
  239.         sHandler = new Handler(){
  240.  
  241.             public void handleMessage(Message message) {
  242.                 if (message.what == GameActivity.MSG_EDITBOX) {
  243.                     GameActivity.CONTEXT.showEditBoxDialog();
  244.                 }
  245.             }
  246.         };
  247.         jobs = new ConcurrentLinkedQueue();
  248.         System.loadLibrary("Mine");
  249.         THE_URL = "";
  250.         HTTP_URL = "";
  251.     }
  252.  
  253.     public GameActivity() {
  254.         this.vungleListener = new EventListener(){
  255.  
  256.             @Override
  257.             public void onAdEnd(boolean bl2, boolean bl3) {
  258.             }
  259.  
  260.             /*
  261.              * Enabled aggressive block sorting
  262.              */
  263.             @Override
  264.             public void onAdPlayableChanged(boolean bl2) {
  265.                 GameActivity gameActivity = GameActivity.CONTEXT;
  266.                 StringBuilder stringBuilder = new StringBuilder().append("onAdPlayableChanged");
  267.                 String string2 = bl2 ? "true" : "false";
  268.                 gameActivity.addToUILog(stringBuilder.append(string2).toString());
  269.             }
  270.  
  271.             @Override
  272.             public void onAdStart() {
  273.             }
  274.  
  275.             @Override
  276.             public void onAdUnavailable(String string2) {
  277.                 GameActivity.CONTEXT.addToUILog("vungle onAdUnavailable" + string2);
  278.             }
  279.  
  280.             @Deprecated
  281.             @Override
  282.             public void onVideoView(boolean bl2, int n2, int n3) {
  283.             }
  284.         };
  285.         this.theAdListener = null;
  286.     }
  287.  
  288.     private void RATEME() {
  289.         if (CONTEXT == null) {
  290.             return;
  291.         }
  292.         new AlertDialog.Builder((Context)CONTEXT).setTitle((CharSequence)"Rate to unlock map").setMessage((CharSequence)"Please give a 5 stars rate to unlock VIP map. Thanks!").setPositiveButton(17039379, new DialogInterface.OnClickListener(){
  293.  
  294.             public void onClick(DialogInterface object, int n2) {
  295.                 GameActivity.CONTEXT.addToUILog("continue ");
  296.                 GameActivity.callnativeOnAdsUnlockMapSuccessCallBack();
  297.                 object = GameActivity.this.getPackageName();
  298.                 try {
  299.                     GameActivity.this.startActivity(new Intent("android.intent.action.VIEW", Uri.parse((String)("market://details?id=" + (String)object))));
  300.                     return;
  301.                 }
  302.                 catch (Exception exception) {
  303.                     GameActivity.this.startActivity(new Intent("android.intent.action.VIEW", Uri.parse((String)("https://play.google.com/store/apps/details?id=" + (String)object))));
  304.                     exception.printStackTrace();
  305.                     return;
  306.                 }
  307.             }
  308.         }).setNegativeButton(17039369, new DialogInterface.OnClickListener(){
  309.  
  310.             public void onClick(DialogInterface dialogInterface, int n2) {
  311.                 GameActivity.CONTEXT.addToUILog("nothing");
  312.             }
  313.         }).setIcon(17301543).show();
  314.     }
  315.  
  316.     /*
  317.      * Exception decompiling
  318.      */
  319.     private static FullAdsType _getFullType() {
  320.         // This method has failed to decompile.  When submitting a bug report, please provide this stack trace, and (if you hold appropriate legal rights) the relevant class file.
  321.         // org.benf.cfr.reader.util.ConfusedCFRException: First case is not immediately after switch.
  322.         // org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters.SwitchReplacer.examineSwitchContiguity(SwitchReplacer.java:366)
  323.         // org.benf.cfr.reader.bytecode.analysis.opgraph.op3rewriters.SwitchReplacer.replaceRawSwitches(SwitchReplacer.java:65)
  324.         // org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysisInner(CodeAnalyser.java:423)
  325.         // org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysisOrWrapFail(CodeAnalyser.java:217)
  326.         // org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysis(CodeAnalyser.java:162)
  327.         // org.benf.cfr.reader.entities.attributes.AttributeCode.analyse(AttributeCode.java:95)
  328.         // org.benf.cfr.reader.entities.Method.analyse(Method.java:357)
  329.         // org.benf.cfr.reader.entities.ClassFile.analyseMid(ClassFile.java:769)
  330.         // org.benf.cfr.reader.entities.ClassFile.analyseTop(ClassFile.java:701)
  331.         // org.benf.cfr.reader.Main.doJar(Main.java:134)
  332.         // org.benf.cfr.reader.Main.main(Main.java:189)
  333.         throw new IllegalStateException("Decompilation failed");
  334.     }
  335.  
  336.     static /* synthetic */ com.google.android.gms.ads.AdView access$1000() {
  337.         return adView;
  338.     }
  339.  
  340.     static /* synthetic */ AdView access$1100() {
  341.         return adView_fb;
  342.     }
  343.  
  344.     static /* synthetic */ void access$1200(GameActivity gameActivity) {
  345.         gameActivity.RATEME();
  346.     }
  347.  
  348.     static /* synthetic */ boolean access$700() {
  349.         return GameActivity.playFullAds();
  350.     }
  351.  
  352.     static /* synthetic */ void access$800() {
  353.         GameActivity.showBannerAds();
  354.     }
  355.  
  356.     static /* synthetic */ boolean access$900() {
  357.         return ShowBannerAds;
  358.     }
  359.  
  360.     private void addToUILog(String string2) {
  361.     }
  362.  
  363.     private static void callnativeOnAdsUnlockMapSuccessCallBack() {
  364.         GameActivity.nativeOnAdsUnlockMapSuccessCallBack(true);
  365.         GameActivity.toastText("Unlock map successs!");
  366.     }
  367.  
  368.     /*
  369.      * Enabled aggressive block sorting
  370.      * Lifted jumps to return sites
  371.      */
  372.     public static void dispatchPendingRunnables() {
  373.         if (jobs.size() <= 0) {
  374.             return;
  375.         }
  376.         int n2 = 4;
  377.         while (n2 > 0) {
  378.             Runnable runnable = jobs.poll();
  379.             if (runnable == null) return;
  380.             runnable.run();
  381.             --n2;
  382.         }
  383.     }
  384.  
  385.     private void doInit(final int n2) {
  386.         Log.e((String)TAG, (String)"xxxxx");
  387.         this.runOnUiThread(new Runnable(){
  388.  
  389.             /*
  390.              * Enabled aggressive block sorting
  391.              * Enabled unnecessary exception pruning
  392.              * Enabled aggressive exception aggregation
  393.              */
  394.             @Override
  395.             public void run() {
  396.                 try {
  397.                     GameActivity.this.loadAdmob();
  398.                 }
  399.                 catch (Exception exception) {
  400.                     exception.printStackTrace();
  401.                 }
  402.                 GameActivity.adHander.sendEmptyMessage(n2);
  403.             }
  404.         });
  405.     }
  406.  
  407.     /*
  408.      * Enabled aggressive block sorting
  409.      * Enabled unnecessary exception pruning
  410.      * Enabled aggressive exception aggregation
  411.      */
  412.     public static String getAppConfID() {
  413.         String string2;
  414.         Object object;
  415.         Object object2;
  416.         block3 : {
  417.             block2 : {
  418.                 object = object2 = "Android_1.0";
  419.                 try {
  420.                     Object object3 = CONTEXT.getPackageManager();
  421.                     object = object2;
  422.                     string2 = CONTEXT.getPackageName();
  423.                     object = object2;
  424.                     object3 = object3.getPackageInfo((String)string2, (int)0).versionName;
  425.                     if (object3 == null) break block2;
  426.                     object2 = object3;
  427.                     object = object3;
  428.                     if (object3.length() > 0) break block3;
  429.                 }
  430.                 catch (Exception exception) {
  431.                     Log.e((String)"VersionInfo", (String)"Exception", (Throwable)exception);
  432.                     return object;
  433.                 }
  434.             }
  435.             object2 = "1.001";
  436.         }
  437.         object = object2;
  438.         return string2 + "_" + (String)object2;
  439.     }
  440.  
  441.     public static String getCurrentLang() {
  442.         return GameActivity.CONTEXT.getResources().getConfiguration().locale.getLanguage();
  443.     }
  444.  
  445.     public static String getDensity() {
  446.         return "" + GameActivity.CONTEXT.getResources().getDisplayMetrics().density + "";
  447.     }
  448.  
  449.     public static String getExternalPathJni() {
  450.         return The_App_Path;
  451.     }
  452.  
  453.     public static String getExternalSdcardJni() {
  454.         return The_Sdcard_Path;
  455.     }
  456.  
  457.     /*
  458.      * Enabled aggressive exception aggregation
  459.      */
  460.     public static String getIPAddress(boolean bl2) {
  461.         Object object;
  462.         block6 : {
  463.             try {
  464.                 object = Collections.list(NetworkInterface.getNetworkInterfaces()).iterator();
  465.                 while (object.hasNext()) {
  466.                     for (InetAddress inetAddress : Collections.list(((NetworkInterface)object.next()).getInetAddresses())) {
  467.                         if (inetAddress.isLoopbackAddress()) continue;
  468.                         String string2 = inetAddress.getHostAddress().toUpperCase();
  469.                         boolean bl3 = inetAddress instanceof Inet4Address;
  470.                         if (bl2) {
  471.                             if (!bl3) continue;
  472.                             return string2;
  473.                         }
  474.                         if (bl3) continue;
  475.                         int n2 = string2.indexOf(37);
  476.                         object = string2;
  477.                         if (n2 >= 0) {
  478.                             object = string2.substring(0, n2);
  479.                             return object;
  480.                         }
  481.                         break block6;
  482.                     }
  483.                 }
  484.             }
  485.             catch (Exception exception) {
  486.                 // empty catch block
  487.             }
  488.             object = "";
  489.         }
  490.         return object;
  491.     }
  492.  
  493.     public static String getIpAdreesV4() {
  494.         return GameActivity.getIPAddress(true);
  495.     }
  496.  
  497.     private AdRequest getRequest() {
  498.         return new AdRequest.Builder().build();
  499.     }
  500.  
  501.     private void initAdsStaff(WindowManager windowManager, WindowManager.LayoutParams layoutParams) {
  502.         vunglePub.init((Context)this, "53cd206d2b5bdb165b000082");
  503.         vunglePub.setEventListeners(this.vungleListener);
  504.         AdColonyUserMetadata adColonyUserMetadata = new AdColonyUserMetadata().setUserAge(26).setUserEducation("bachelors_degree").setUserGender("male");
  505.         AdColony_ad_options = new AdColonyAdOptions().setUserMetadata(adColonyUserMetadata);
  506.         AdColony.configure((Activity)this, "app5f473b34512542b2a3", AdColonyZoonID);
  507.         AdColonylistener = new AdColonyInterstitialListener(){
  508.  
  509.             @Override
  510.             public void onExpiring(AdColonyInterstitial adColonyInterstitial) {
  511.                 GameActivity.CONTEXT.addToUILog("onExpiring");
  512.                 GameActivity.this.reloadAdcolonyAds();
  513.             }
  514.  
  515.             @Override
  516.             public void onRequestFilled(AdColonyInterstitial adColonyInterstitial) {
  517.                 GameActivity.adColonyInterstitial = adColonyInterstitial;
  518.             }
  519.  
  520.             @Override
  521.             public void onRequestNotFilled(AdColonyZone adColonyZone) {
  522.                 GameActivity.CONTEXT.addToUILog(" adcolony  onRequestNotFilled");
  523.             }
  524.         };
  525.         this.reloadAdcolonyAds();
  526.         adView_fb = new AdView((Context)this, "1660759314162308_1660762240828682", com.facebook.ads.AdSize.BANNER_HEIGHT_50);
  527.         windowManager.addView((View)adView_fb, (ViewGroup.LayoutParams)layoutParams);
  528.         adView_fb.setAdListener(new AdListener(){
  529.  
  530.             @Override
  531.             public void onAdClicked(Ad ad2) {
  532.             }
  533.  
  534.             @Override
  535.             public void onAdLoaded(Ad ad2) {
  536.                 GameActivity.CONTEXT.addToUILog("fb banner onAdLoaded");
  537.                 adView_fb_loaded = true;
  538.             }
  539.  
  540.             @Override
  541.             public void onError(Ad ad2, AdError adError) {
  542.                 GameActivity.CONTEXT.addToUILog("fb banner error" + adError.getErrorMessage());
  543.             }
  544.         });
  545.         adView_fb.loadAd();
  546.         adView_fb.setVisibility(4);
  547.         interstitialAd_fb = new com.facebook.ads.InterstitialAd((Context)CONTEXT, "1660759314162308_1660762740828632");
  548.         interstitialAd_fb.setAdListener(new InterstitialAdListener(){
  549.  
  550.             @Override
  551.             public void onAdClicked(Ad ad2) {
  552.                 GameActivity.CONTEXT.addToUILog("fb onAdClicked");
  553.             }
  554.  
  555.             @Override
  556.             public void onAdLoaded(Ad ad2) {
  557.                 GameActivity.CONTEXT.addToUILog("fb onAdLoaded");
  558.             }
  559.  
  560.             @Override
  561.             public void onError(Ad ad2, AdError adError) {
  562.                 GameActivity.CONTEXT.addToUILog("fb onError" + adError.getErrorMessage());
  563.             }
  564.  
  565.             @Override
  566.             public void onInterstitialDismissed(Ad ad2) {
  567.                 GameActivity.CONTEXT.addToUILog("fb onInterstitialDismissed");
  568.                 interstitialAd_fb.loadAd();
  569.             }
  570.  
  571.             @Override
  572.             public void onInterstitialDisplayed(Ad ad2) {
  573.                 GameActivity.CONTEXT.addToUILog("fb onInterstitialDisplayed");
  574.             }
  575.         });
  576.         interstitialAd_fb.loadAd();
  577.     }
  578.  
  579.     /*
  580.      * Enabled aggressive block sorting
  581.      * Enabled unnecessary exception pruning
  582.      * Enabled aggressive exception aggregation
  583.      */
  584.     private void loadAdmob() {
  585.         Object object;
  586.         try {
  587.             object = this.getApplicationContext().getPackageName();
  588.             if (object.equals("com.xincraft.games.worldcraft")) {
  589.                 Entry_AdmobBarnnerId = "ca-app-pub-6977152614657036/2532636102";
  590.                 Entry_AdmobFullId = "ca-app-pub-6977152614657036/4009369306";
  591.             } else if (object.equals("com.xincraft.games.freecraft")) {
  592.                 Entry_AdmobBarnnerId = "ca-app-pub-6977152614657036/9776701306";
  593.                 Entry_AdmobFullId = "ca-app-pub-6977152614657036/2253434502";
  594.             }
  595.         }
  596.         catch (Exception exception) {
  597.             exception.printStackTrace();
  598.         }
  599.         Log.i((String)TAG, (String)"init ads22");
  600.         object = (WindowManager)this.getSystemService("window");
  601.         WindowManager.LayoutParams layoutParams = new WindowManager.LayoutParams();
  602.         layoutParams.type = 1000;
  603.         layoutParams.width = -2;
  604.         layoutParams.height = -2;
  605.         layoutParams.flags |= 8;
  606.         layoutParams.gravity = 8388693;
  607.         if (ShowBannerAds) {
  608.             adView = new com.google.android.gms.ads.AdView((Context)this);
  609.             adView.setAdSize(AdSize.BANNER);
  610.             adView.setAdUnitId(Entry_AdmobBarnnerId);
  611.             object.addView((View)adView, (ViewGroup.LayoutParams)layoutParams);
  612.             this.initAdsStaff((WindowManager)object, layoutParams);
  613.             object = this.getRequest();
  614.             adView.loadAd((AdRequest)object);
  615.             adView.setVisibility(4);
  616.         }
  617.         interstitial = new InterstitialAd((Context)this);
  618.         interstitial.setAdUnitId(Entry_AdmobFullId);
  619.         object = this.getRequest();
  620.         interstitial.loadAd((AdRequest)object);
  621.         interstitial.setAdListener(this.theAdListener);
  622.     }
  623.  
  624.     public static native void nativeOnAdsUnlockMapSuccessCallBack(boolean var0);
  625.  
  626.     public static native void nativeSetEditBoxResult(byte[] var0, boolean var1);
  627.  
  628.     private static void newInterstitialAd() {
  629.         try {
  630.             if (interstitial != null && !interstitial.isLoaded()) {
  631.                 AdRequest adRequest = CONTEXT.getRequest();
  632.                 interstitial.loadAd(adRequest);
  633.             }
  634.             return;
  635.         }
  636.         catch (Exception exception) {
  637.             exception.printStackTrace();
  638.             return;
  639.         }
  640.     }
  641.  
  642.     public static void openUrl(String string2) {
  643.         HTTP_URL = string2;
  644.         WebViewActivity.HTTP_URL = string2;
  645.         GameActivity.showAd(MSG_OPEN_URL);
  646.     }
  647.  
  648.     private static boolean playAdColonyFull() {
  649.         if (adColonyInterstitial != null && adColonyInterstitial.show()) {
  650.             return true;
  651.         }
  652.         CONTEXT.addToUILog("no adcolony ads");
  653.         return false;
  654.     }
  655.  
  656.     private static boolean playAdmobFull() {
  657.         CONTEXT.addToUILog("call playAdmob");
  658.         if (interstitial != null) {
  659.             if (interstitial.isLoaded()) {
  660.                 interstitial.show();
  661.                 return true;
  662.             }
  663.             GameActivity.newInterstitialAd();
  664.         }
  665.         return false;
  666.     }
  667.  
  668.     private static boolean playFBFullAds() {
  669.         if (interstitialAd_fb != null && interstitialAd_fb.isAdLoaded()) {
  670.             return interstitialAd_fb.show();
  671.         }
  672.         CONTEXT.addToUILog("no fb full ads");
  673.         return false;
  674.     }
  675.  
  676.     /*
  677.      * Enabled aggressive block sorting
  678.      */
  679.     private static boolean playFullAds() {
  680.         int n2 = 0;
  681.         while (n2 < 10) {
  682.             FullAdsType fullAdsType = GameActivity._getFullType();
  683.             if (fullAdsType == FullAdsType.VungleType && GameActivity.playVungleAds() || fullAdsType == FullAdsType.AdcolonyType && GameActivity.playAdColonyFull() || fullAdsType == FullAdsType.FacebookType && GameActivity.playFBFullAds() || fullAdsType == FullAdsType.GoogleType && GameActivity.playAdmobFull()) {
  684.                 return true;
  685.             }
  686.             ++n2;
  687.         }
  688.         return false;
  689.     }
  690.  
  691.     private static boolean playVungleAds() {
  692.         if (vunglePub.isAdPlayable()) {
  693.             vunglePub.playAd();
  694.             return true;
  695.         }
  696.         CONTEXT.addToUILog("no vungle ads");
  697.         return false;
  698.     }
  699.  
  700.     public static void promoteThisApp(String string2) {
  701.         GameActivity.showAd(MSG_PROMOTE);
  702.     }
  703.  
  704.     private void reloadAdcolonyAds() {
  705.         if (AdColonylistener != null) {
  706.             AdColony.requestInterstitial(AdColonyZoonID, AdColonylistener, AdColony_ad_options);
  707.         }
  708.     }
  709.  
  710.     public static void setEditBoxResult(final String arrby, final boolean bl2) {
  711.         try {
  712.             arrby = arrby.getBytes("UTF8");
  713.             jobs.add(new Runnable(){
  714.  
  715.                 @Override
  716.                 public void run() {
  717.                     GameActivity.nativeSetEditBoxResult(arrby, bl2);
  718.                 }
  719.             });
  720.             return;
  721.         }
  722.         catch (UnsupportedEncodingException unsupportedEncodingException) {
  723.             unsupportedEncodingException.printStackTrace();
  724.             return;
  725.         }
  726.     }
  727.  
  728.     public static void setFullAdsOrder(String string2) {
  729.         CONTEXT.addToUILog("setFullAdsOrder:" + string2);
  730.         FullAdsOrder = string2;
  731.     }
  732.  
  733.     /*
  734.      * Enabled aggressive block sorting
  735.      * Enabled unnecessary exception pruning
  736.      * Enabled aggressive exception aggregation
  737.      */
  738.     public static void showAd(int n2) {
  739.         System.out.println("type=xx01" + n2);
  740.         if (INIT_ADMOB) {
  741.             adHander.sendEmptyMessage(n2);
  742.             return;
  743.         }
  744.         try {
  745.             CONTEXT.doInit(n2);
  746.         }
  747.         catch (Exception exception) {
  748.             exception.printStackTrace();
  749.         }
  750.         INIT_ADMOB = true;
  751.     }
  752.  
  753.     private static void showBannerAds() {
  754.         block3 : {
  755.             block2 : {
  756.                 CONTEXT.addToUILog("show banner");
  757.                 if (!ShowBannerAds) break block2;
  758.                 if (!adView_fb_loaded) break block3;
  759.                 adView_fb.setVisibility(0);
  760.             }
  761.             return;
  762.         }
  763.         adView.setVisibility(0);
  764.     }
  765.  
  766.     public static void showEditTextDialog(String string2, String string3, int n2, int n3, int n4, int n5) {
  767.         sMsg = new EditBoxMessage(string2, string3, n2, n3, n4, n5);
  768.         sHandler.sendEmptyMessage(MSG_EDITBOX);
  769.     }
  770.  
  771.     private static void toastText(String string2) {
  772.         Toast.makeText((Context)CONTEXT, (CharSequence)string2, (int)0).show();
  773.     }
  774.  
  775.     public void onBackPressed() {
  776.     }
  777.  
  778.     protected void onCreate(Bundle bundle) {
  779.         super.onCreate(bundle);
  780.         The_App_Path = this.getExternalFilesDir(null).toString() + File.separator;
  781.         The_Sdcard_Path = Environment.getExternalStorageDirectory() + File.separator;
  782.         CONTEXT = this;
  783.     }
  784.  
  785.     protected void onDestroy() {
  786.         if (interstitialAd_fb != null) {
  787.             interstitialAd_fb.destroy();
  788.         }
  789.         if (adView_fb != null) {
  790.             adView_fb.destroy();
  791.         }
  792.         super.onDestroy();
  793.     }
  794.  
  795.     protected void onPause() {
  796.         super.onPause();
  797.         vunglePub.onPause();
  798.     }
  799.  
  800.     public void onResume() {
  801.         super.onResume();
  802.         vunglePub.onResume();
  803.         if (adColonyInterstitial == null || adColonyInterstitial.isExpired()) {
  804.             this.reloadAdcolonyAds();
  805.         }
  806.     }
  807.  
  808.     protected void onStart() {
  809.         super.onStart();
  810.     }
  811.  
  812.     protected void onStop() {
  813.         super.onStop();
  814.     }
  815.  
  816.     /*
  817.      * Enabled aggressive block sorting
  818.      */
  819.     public void showEditBoxDialog() {
  820.         EditBoxMessage editBoxMessage = sMsg;
  821.         final EditText editText = new EditText((Context)this);
  822.         editText.setText((CharSequence)editBoxMessage.content);
  823.         editText.setSingleLine(true);
  824.         if (editBoxMessage.inputFlag == 0) {
  825.             editText.setInputType(129);
  826.         } else {
  827.             editText.setInputType(524288);
  828.         }
  829.         editText.setOnEditorActionListener(new TextView.OnEditorActionListener(){
  830.  
  831.             public boolean onEditorAction(TextView textView, int n2, KeyEvent keyEvent) {
  832.                 boolean bl2;
  833.                 block3 : {
  834.                     block2 : {
  835.                         boolean bl3 = false;
  836.                         if (n2 != 0) break block2;
  837.                         bl2 = bl3;
  838.                         if (n2 != 0) break block3;
  839.                         bl2 = bl3;
  840.                         if (keyEvent == null) break block3;
  841.                         bl2 = bl3;
  842.                         if (keyEvent.getAction() != 0) break block3;
  843.                     }
  844.                     ((InputMethodManager)GameActivity.this.getSystemService("input_method")).hideSoftInputFromWindow(editText.getWindowToken(), 0);
  845.                     bl2 = true;
  846.                 }
  847.                 return bl2;
  848.             }
  849.         });
  850.         new AlertDialog.Builder((Context)this).setPositiveButton((CharSequence)"Ok", new DialogInterface.OnClickListener(){
  851.  
  852.             public void onClick(DialogInterface dialogInterface, int n2) {
  853.                 Log.e((String)"ddd", (String)("ok:" + editText.getText().toString()));
  854.                 GameActivity.setEditBoxResult(editText.getText().toString(), true);
  855.             }
  856.         }).setView((View)editText).setNegativeButton((CharSequence)"Cancel", new DialogInterface.OnClickListener(){
  857.  
  858.             public void onClick(DialogInterface dialogInterface, int n2) {
  859.                 Log.e((String)"ddd", (String)("cancel" + editText.getText().toString()));
  860.                 GameActivity.setEditBoxResult(editText.getText().toString(), false);
  861.             }
  862.         }).setOnCancelListener(new DialogInterface.OnCancelListener(){
  863.  
  864.             public void onCancel(DialogInterface dialogInterface) {
  865.                 Log.e((String)"ddd", (String)("back   cancel" + editText.getText().toString()));
  866.                 GameActivity.setEditBoxResult(editText.getText().toString(), false);
  867.             }
  868.         }).setCancelable(false).show();
  869.         new Handler().postDelayed(new Runnable(){
  870.  
  871.             @Override
  872.             public void run() {
  873.                 editText.requestFocus();
  874.                 editText.setSelection(editText.length());
  875.                 ((InputMethodManager)GameActivity.this.getSystemService("input_method")).showSoftInput((View)editText, 0);
  876.             }
  877.         }, 200);
  878.     }
  879.  
  880.     public static class EditBoxMessage {
  881.         public String content;
  882.         public int inputFlag;
  883.         public int inputMode;
  884.         public int maxLength;
  885.         public int returnType;
  886.         public String title;
  887.  
  888.         public EditBoxMessage(String string2, String string3, int n2, int n3, int n4, int n5) {
  889.             this.content = string3;
  890.             this.title = string2;
  891.             this.inputMode = n2;
  892.             this.inputFlag = n3;
  893.             this.returnType = n4;
  894.             this.maxLength = n5;
  895.         }
  896.     }
  897.  
  898.     public static enum FullAdsType {
  899.         VungleType,
  900.         AdcolonyType,
  901.         FacebookType,
  902.         GoogleType;
  903.        
  904.  
  905.         private FullAdsType() {
  906.         }
  907.     }
  908.  
  909.     class MyAdListener
  910.     extends com.google.android.gms.ads.AdListener {
  911.         MyAdListener() {
  912.         }
  913.  
  914.         @Override
  915.         public void onAdClosed() {
  916.         }
  917.  
  918.         @Override
  919.         public void onAdFailedToLoad(int n2) {
  920.             System.err.println("errorCode: " + n2);
  921.         }
  922.  
  923.         @Override
  924.         public void onAdLeftApplication() {
  925.         }
  926.  
  927.         @Override
  928.         public void onAdLoaded() {
  929.         }
  930.  
  931.         @Override
  932.         public void onAdOpened() {
  933.         }
  934.     }
  935.  
  936. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement