diff --git a/.idea/caches/build_file_checksums.ser b/.idea/caches/build_file_checksums.ser index 0c642a68..a21e99ca 100644 Binary files a/.idea/caches/build_file_checksums.ser and b/.idea/caches/build_file_checksums.ser differ diff --git a/app/build.gradle b/app/build.gradle index 96527d7a..924a6da6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -156,5 +156,4 @@ dependencies { implementation project(':automator') implementation project(':common') implementation project(':autojs') - implementation (name: 'ads8', ext: 'aar') } \ No newline at end of file diff --git a/app/libs/ads8.aar b/app/libs/ads8.aar deleted file mode 100644 index 4bcbc834..00000000 Binary files a/app/libs/ads8.aar and /dev/null differ diff --git a/app/src/main/java/org/autojs/autojs/Constants.java b/app/src/main/java/org/autojs/autojs/Constants.java index 48521dda..0995244c 100644 --- a/app/src/main/java/org/autojs/autojs/Constants.java +++ b/app/src/main/java/org/autojs/autojs/Constants.java @@ -6,17 +6,5 @@ package org.autojs.autojs; public final class Constants { - public static final int AD_TYPE_RANDOM = 0; - public static final int AD_TYPE_NEWS = 1; - public static final int AD_TYPE_SOCIAL = 2; - public static final int AD_TYPE_ANIMATION = 3; - public static final int AD_TYPE_GAMES = 4; - - public static final int UMENG_ID_NEWS = 36787; - public static final int UMENG_ID_SOCIAL = 36785; - public static final int UMENG_ID_ANIMATION = 36781; - public static final int UMENG_ID_GAMES = 36615; - - public static final int[] UMENG_IDS = {UMENG_ID_NEWS, UMENG_ID_SOCIAL, UMENG_ID_ANIMATION, UMENG_ID_GAMES}; } diff --git a/app/src/main/java/org/autojs/autojs/Pref.java b/app/src/main/java/org/autojs/autojs/Pref.java index 0b2ece2c..776db678 100644 --- a/app/src/main/java/org/autojs/autojs/Pref.java +++ b/app/src/main/java/org/autojs/autojs/Pref.java @@ -23,8 +23,6 @@ public class Pref { private static final SharedPreferences DISPOSABLE_BOOLEAN = GlobalAppContext.get().getSharedPreferences("DISPOSABLE_BOOLEAN", Context.MODE_PRIVATE); private static final String KEY_SERVER_ADDRESS = "KEY_SERVER_ADDRESS"; private static final String KEY_SHOULD_SHOW_ANNUNCIATION = "KEY_SHOULD_SHOW_ANNUNCIATION"; - private static final String KEY_FIRST_SHOW_AD = "KEY_FIRST_SHOW_AD"; - private static final String KEY_LAST_SHOW_AD_MILLIS = "KEY_LAST_SHOW_AD_MILLIS"; private static final String KEY_FLOATING_MENU_SHOWN = "KEY_FLOATING_MENU_SHOWN"; private static final String KEY_EDITOR_THEME = "editor.theme"; private static final String KEY_EDITOR_TEXT_SIZE = "editor.textSize"; @@ -105,34 +103,6 @@ public class Pref { return getDisposableBoolean(KEY_SHOULD_SHOW_ANNUNCIATION, true); } - public static boolean shouldShowAd() { - if (isFirstDay()) { - return false; - } - String adShowingMode = def().getString(getString(R.string.key_ad_showing_mode), "Default"); - switch (adShowingMode) { - case "Default": - return true; - case "OncePerDay": - long lastShowMillis = def().getLong(KEY_LAST_SHOW_AD_MILLIS, 0); - if (System.currentTimeMillis() - lastShowMillis < TimeUnit.DAYS.toMillis(1)) { - return false; - } - def().edit().putLong(KEY_LAST_SHOW_AD_MILLIS, System.currentTimeMillis()).apply(); - return true; - } - return true; - } - - public static int getAdType() { - try { - return Integer.parseInt(def().getString(getString(R.string.key_ad_type), String.valueOf(Constants.AD_TYPE_RANDOM))); - } catch (Exception e) { - e.printStackTrace(); - return Constants.AD_TYPE_RANDOM; - } - } - private static boolean isFirstDay() { long firstUsingMillis = def().getLong("firstUsingMillis", -1); if (firstUsingMillis == -1) { @@ -142,16 +112,6 @@ public class Pref { return System.currentTimeMillis() - firstUsingMillis <= TimeUnit.DAYS.toMillis(1); } - public static boolean isFirstShowingAd() { - return getDisposableBoolean(KEY_FIRST_SHOW_AD, true); - } - - public static boolean isRecordWithRootEnabled() { - //always return true after version 3.0.0 - //record without root has been deprecated - return true; - } - public static boolean isRecordToastEnabled() { return def().getBoolean(getString(R.string.key_record_toast), true); } diff --git a/app/src/main/java/org/autojs/autojs/ui/splash/SplashActivity.java b/app/src/main/java/org/autojs/autojs/ui/splash/SplashActivity.java index ab0f628e..2cdeb58a 100644 --- a/app/src/main/java/org/autojs/autojs/ui/splash/SplashActivity.java +++ b/app/src/main/java/org/autojs/autojs/ui/splash/SplashActivity.java @@ -1,138 +1,62 @@ package org.autojs.autojs.ui.splash; -import android.Manifest; import android.os.Bundle; import android.os.Handler; -import android.support.annotation.NonNull; import android.support.annotation.Nullable; -import android.support.v7.app.AppCompatDelegate; -import android.util.Log; -import android.view.View; -import com.xcy8.ads.listener.LoadAdListener; -import com.xcy8.ads.view.FullScreenAdView; - -import org.autojs.autojs.Constants; -import org.autojs.autojs.Pref; import org.autojs.autojs.R; import org.autojs.autojs.ui.BaseActivity; import org.autojs.autojs.ui.main.MainActivity_; -import java.util.Random; - /** * Created by Stardust on 2017/7/7. */ public class SplashActivity extends BaseActivity { - public static final String NOT_START_MAIN_ACTIVITY = "notStartMainActivity"; - public static final String FORCE_SHOW_AD = "forceShowAd"; private static final String LOG_TAG = SplashActivity.class.getSimpleName(); - private static final long INIT_TIMEOUT = 500; + private static final long INIT_TIMEOUT = 800; - - private boolean mCanEnterNextActivity = false; - private boolean mNotStartMainActivity; private boolean mAlreadyEnterNextActivity = false; - private boolean mAdLoading = false; - + private boolean mPaused; private Handler mHandler; - FullScreenAdView mFullScreenAdView; - @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); init(); - boolean forceShowAd = getIntent().getBooleanExtra(FORCE_SHOW_AD, false); - if (!forceShowAd && !Pref.shouldShowAd()) { - mFullScreenAdView.setVisibility(View.INVISIBLE); - } else { - if (checkPermission(Manifest.permission.READ_PHONE_STATE)) { - fetchSplashAD(); - } - } mHandler.postDelayed(SplashActivity.this::enterNextActivity, INIT_TIMEOUT); } private void init() { setContentView(R.layout.activity_splash); - mFullScreenAdView = findViewById(R.id.full_screen_view); mHandler = new Handler(); - mNotStartMainActivity = getIntent().getBooleanExtra(NOT_START_MAIN_ACTIVITY, false); - } - - void enterNextActivity() { - if (mAlreadyEnterNextActivity) - return; - mAlreadyEnterNextActivity = true; - if (!mNotStartMainActivity) - MainActivity_.intent(this).start(); - finish(); - } - - @Override - protected void onResume() { - super.onResume(); - //enterNextActivityIfNeeded(); } @Override protected void onPause() { super.onPause(); - mCanEnterNextActivity = false; + mPaused = true; } - private void enterNextActivityIfNeeded() { - if (mCanEnterNextActivity) { + @Override + protected void onResume() { + super.onResume(); + if (mPaused) { + mPaused = false; enterNextActivity(); + } + } + + void enterNextActivity() { + if (mAlreadyEnterNextActivity) + return; + if (mPaused) { return; } - mCanEnterNextActivity = true; + mAlreadyEnterNextActivity = true; + MainActivity_.intent(this).start(); + finish(); } - @Override - public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { - super.onRequestPermissionsResult(requestCode, permissions, grantResults); - fetchSplashAD(); - } - - private void fetchSplashAD() { - mAdLoading = true; - mFullScreenAdView.setFullScreenListener(this::enterNextActivity); - mFullScreenAdView.setLoadAdListener(new LoadAdListener() { - @Override - public void onSuccess() { - mAdLoading = false; - Log.d(LOG_TAG, "onAdLoadSuccess"); - } - - @Override - public void onFailure(String s) { - mAdLoading = false; - Log.e(LOG_TAG, "onAdLoadFailure: " + s); - enterNextActivity(); - } - }); - mHandler.postDelayed(() -> { - if (mAdLoading) { - enterNextActivity(); - } - }, 2000); - mFullScreenAdView.loadAd(getAdId(), false); - } - - private String getAdId() { - int type = Pref.getAdType(); - int id = type >= 1 && type <= Constants.UMENG_IDS.length ? Constants.UMENG_IDS[type - 1] - : Constants.UMENG_IDS[new Random().nextInt(Constants.UMENG_IDS.length)]; - return String.valueOf(id); - } - - @Override - protected void onDestroy() { - super.onDestroy(); - mFullScreenAdView.clean(); - } } diff --git a/app/src/main/res/layout/activity_splash.xml b/app/src/main/res/layout/activity_splash.xml index b1674ead..43c7a5a1 100644 --- a/app/src/main/res/layout/activity_splash.xml +++ b/app/src/main/res/layout/activity_splash.xml @@ -1,6 +1,5 @@ - - + android:theme="@style/AppTheme.AppBarOverlay"> + android:theme="@style/AppTheme.AppBarOverlay">