hanjing 7 anni fa
parent
commit
f7bbd62137

+ 51 - 35
app/src/main/java/com/sheep/gamegroup/view/activity/SplashAct.java

@@ -14,6 +14,7 @@ import android.provider.Settings;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.v7.app.AlertDialog;
+import android.text.TextUtils;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.TextView;
@@ -35,6 +36,7 @@ import com.sheep.gamegroup.util.TestUtil;
 import com.sheep.jiuyan.samllsheep.BuildConfig;
 import com.sheep.jiuyan.samllsheep.R;
 import com.sheep.jiuyan.samllsheep.SheepApp;
+import com.sheep.jiuyan.samllsheep.utils.SpUtils;
 
 import org.afinal.simplecache.ApiKey;
 
@@ -65,7 +67,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     ImageView splash_bg;
     @BindView(R.id.splash_skip)
     TextView splash_skip;
-//    @BindView(R.id.splash_know_ad_tv)
+    //    @BindView(R.id.splash_know_ad_tv)
     TextView splash_know_ad_tv;
 
 
@@ -115,6 +117,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     }
 
     private boolean isRequestCodePermissions = true;//是否正在获取权限或者没有获取到权限
+
     @AfterPermissionGranted(PERMISSON_REQUESTCODE)
     private void requestCodePermissions() {
         if (!EasyPermissions.hasPermissions(this, needPermissions)) {
@@ -129,15 +132,15 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
         @Override
         public void handleMessage(Message msg) {
             super.handleMessage(msg);
-            switch (msg.what){
+            switch (msg.what) {
                 case 0:
-                    if(!isRequestCodePermissions && !isLoadingData && timerIsFinish())
+                    if (!isRequestCodePermissions && !isLoadingData && timerIsFinish())
                         gotoNext();
                     else
                         sendHandlerMessages(100);
                     break;
                 case 1:
-                    if(SysAppUtil.isNewSmallSheep() || TestUtil.isDev()){//新版本只显示引导页面,不展示弹窗和开屏广告
+                    if (SysAppUtil.isNewSmallSheep() || TestUtil.isDev()) {//新版本只显示引导页面,不展示弹窗和开屏广告
                         isLoadingData = false;
                         sendHandlerMessages(200);
                     } else {
@@ -157,7 +160,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
                                     .subscribe(new SheepSubscriber<BaseMessage>(activity) {
                                         @Override
                                         public void onNext(BaseMessage baseMessage) {
-                                            DataUtil.getInstance().resetCacheTime(ApiKey.advertisements(1), 3600*5);//开屏广告最多缓存5个小时
+                                            DataUtil.getInstance().resetCacheTime(ApiKey.advertisements(1), 3600 * 5);//开屏广告最多缓存5个小时
                                             isLoadingData = false;
                                             advertising = baseMessage.getData(Advertising.class);
                                             try {
@@ -199,6 +202,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
 
     @BindView(R.id.login_bg_img)
     ImageView login_bg_img;
+
     @Override
     public void initView() {
         activity = this;
@@ -214,32 +218,34 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     public void initListener() {
 
     }
+
     private boolean isLoadingData = true;//是否正在获取开屏广告数据
     private Advertising advertising;
+
     @Override
     public void initData() {
         SheepApp.getInstance().getNetComponent().getApiService().checkUserFirst()
-                        .subscribeOn(Schedulers.io())
-                        .observeOn(AndroidSchedulers.mainThread())
-                        .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
-                            @Override
-                            public void onNext(BaseMessage baseMessage) {
-                                boolean isNewSmallSheep = baseMessage.getData(Boolean.class);
-                                DataUtil.getInstance().setIsNewSmallSheep(isNewSmallSheep);
-                                mHandler.sendEmptyMessageDelayed(1, 300);
-                            }
+                .subscribeOn(Schedulers.io())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new SheepSubscriber<BaseMessage>(SheepApp.getInstance()) {
+                    @Override
+                    public void onNext(BaseMessage baseMessage) {
+                        boolean isNewSmallSheep = baseMessage.getData(Boolean.class);
+                        DataUtil.getInstance().setIsNewSmallSheep(isNewSmallSheep);
+                        mHandler.sendEmptyMessageDelayed(1, 300);
+                    }
 
-                            @Override
-                            public void onError(BaseMessage baseMessage) {
-                                //访问出错时,认为不是新设备
-                                DataUtil.getInstance().setIsNewSmallSheep(false);
-                                mHandler.sendEmptyMessageDelayed(1, 300);
-                            }
-                        });
+                    @Override
+                    public void onError(BaseMessage baseMessage) {
+                        //访问出错时,认为不是新设备
+                        DataUtil.getInstance().setIsNewSmallSheep(false);
+                        mHandler.sendEmptyMessageDelayed(1, 300);
+                    }
+                });
     }
 
     private void loadAdvertising() {
-        if(advertising.isImage()) {
+        if (advertising.isImage()) {
             Glide.with(activity).load(advertising.getDisplay_src()).into(splash_bg);
 //            btnJoin.setVisibility(View.GONE);
             splash_video_view.setVisibility(View.GONE);
@@ -250,10 +256,10 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
             videoView.setOnInfoListener(new MediaPlayer.OnInfoListener() {
                 @Override
                 public boolean onInfo(MediaPlayer mediaPlayer, int what, int extra) {
-                    if(!mediaPlayer.isLooping())
+                    if (!mediaPlayer.isLooping())
                         mediaPlayer.setLooping(true);
                     LogUtil.println("onInfo what = " + what + " extra = " + extra);
-                    if(MediaPlayer.MEDIA_INFO_BUFFERING_START == what){
+                    if (MediaPlayer.MEDIA_INFO_BUFFERING_START == what) {
                         splash_bg.setVisibility(View.GONE);
 //                        btnJoin.setVisibility(View.GONE);
                     }
@@ -265,10 +271,10 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
             videoView.requestFocus();
         }
 
-        if(splash_know_ad_tv != null)
+        if (splash_know_ad_tv != null)
             splash_know_ad_tv.setVisibility(View.VISIBLE);
         mHandler.removeMessages(0);
-        if(advertising.getShow_time() > 0) {
+        if (advertising.getShow_time() > 0) {
             splash_skip.setVisibility(View.VISIBLE);
             timer = RxjavaCountDownTimer.getInstance(/*BuildConfig.DEBUG ? 10 : */advertising.getShow_time())
                     .setOnTickListener(new RxjavaCountDownTimer.OnTickListener() {
@@ -290,12 +296,14 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
             sendHandlerMessages(1000);
         }
     }
+
     private boolean isResume = false;
+
     @Override
     protected void onResume() {
         super.onResume();
         isResume = true;
-        if(videoView != null)
+        if (videoView != null)
             videoView.resume();
     }
 
@@ -303,7 +311,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     protected void onPause() {
         super.onPause();
         isResume = false;
-        if(videoView != null)
+        if (videoView != null)
             videoView.pause();
     }
 
@@ -355,7 +363,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     }
 
 
-    @OnClick({R.id.btn_join, R.id.splash_skip, R.id.splash_know_ad_tv, R.id.splash_bg, R.id.splash_video_view,R.id.splash_click_view})
+    @OnClick({R.id.btn_join, R.id.splash_skip, R.id.splash_know_ad_tv, R.id.splash_bg, R.id.splash_video_view, R.id.splash_click_view})
     public void onViewClicked(View view) {
         switch (view.getId()) {
             case R.id.btn_join:
@@ -366,10 +374,10 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
             case R.id.splash_video_view:
             case R.id.splash_know_ad_tv:
             case R.id.splash_click_view:
-                if(advertising != null) {
+                if (advertising != null) {
                     goAdLink(activity, advertising);
                     AD_SPLASH.onEvent("ad_id", advertising.getId());
-                }else {
+                } else {
                     gotoNext();
                 }
                 break;
@@ -377,8 +385,15 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     }
 
     public static void goAdLink(Activity activity, Advertising advertising) {
-        if(advertising != null){
-            switch(advertising.getLinkType()){//转跳类型1:H5外部 2:H5内部 3:试玩赚钱 4:单个任务 5:信用卡 6:微信二维码 7:连续任务 8:打卡赚钱
+        if (TextUtils.isEmpty(SpUtils.getToken(SheepApp.getInstance()))) {
+            Jump2View.getInstance().goLoginView(activity, null);
+            if (activity instanceof SplashAct) {
+                activity.finish();
+            }
+            return;
+        }
+        if (advertising != null) {
+            switch (advertising.getLinkType()) {//转跳类型1:H5外部 2:H5内部 3:试玩赚钱 4:单个任务 5:信用卡 6:微信二维码 7:连续任务 8:打卡赚钱
                 case 1:
                     Jump2View.getInstance().goWeb(activity, advertising.getLink());
                     break;
@@ -428,7 +443,8 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
         isRequestCodePermissions = false;
         sendHandlerMessages(10);
     }
-    private void sendHandlerMessages(int time){
+
+    private void sendHandlerMessages(int time) {
         try {
             mHandler.removeMessages(0);
             mHandler.sendEmptyMessageDelayed(0, /*BuildConfig.DEBUG ? 100 :*/ time);
@@ -440,7 +456,7 @@ public class SplashAct extends BaseActivity implements EasyPermissions.Permissio
     @Override
     protected void onDestroy() {
         super.onDestroy();
-        if(timer != null)
+        if (timer != null)
             timer.clear();
         try {
             mHandler.removeMessages(0);