| | |
| | | |
| | | import android.content.Intent; |
| | | import android.os.Handler; |
| | | import android.os.Message; |
| | | import android.util.Log; |
| | | import android.view.View; |
| | | import android.view.WindowManager; |
| | | |
| | | import androidx.annotation.NonNull; |
| | | import androidx.lifecycle.Observer; |
| | | |
| | | import com.bytedance.sdk.openadsdk.TTSplashAd; |
| | | import com.runt.open.mvvm.MainActivity; |
| | | import com.runt.open.mvvm.base.activities.BaseActivity; |
| | | import com.runt.open.mvvm.base.model.ImpViewModel; |
| | | import com.runt.open.mvvm.databinding.ActivitySplashBinding; |
| | | import com.runt.open.mvvm.ui.main.MainActivity; |
| | | |
| | | |
| | | /** |
| | |
| | | * |
| | | * @purpose Created by Runt (qingingrunt2010@qq.com) on 2020-4-16. |
| | | */ |
| | | public class SplashActivity extends BaseActivity<ActivitySplashBinding,SplashViewModel> { |
| | | public class SplashActivity extends BaseActivity<ActivitySplashBinding, ImpViewModel> { |
| | | |
| | | final String TAG = "WelcomeActivity"; |
| | | |
| | | Handler handler = new Handler(){ |
| | | boolean started = false; |
| | | @Override |
| | | public void handleMessage(@NonNull Message msg) { |
| | | super.handleMessage(msg); |
| | | if(!started) {//确保该语句只执行一次 |
| | | started = true; |
| | | Intent intent = new Intent(mContext, MainActivity.class); |
| | | startActivity(intent); |
| | | finish(); |
| | | } |
| | | } |
| | | }; |
| | | |
| | | @Override |
| | | public void initViews() { |
| | | getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, |
| | | WindowManager.LayoutParams.FLAG_FULLSCREEN);//全屏 |
| | | hideBottomUIMenu(); |
| | | viewModel.getSplashAd().observe(this, new Observer<TTSplashAd>() { |
| | | @Override |
| | | public void onChanged(TTSplashAd ttSplashAd) { |
| | | binding.splashAdContainer.addView(ttSplashAd.getSplashView()); |
| | | //设置SplashView的交互监听器 |
| | | ttSplashAd.setSplashInteractionListener(new TTSplashAd.AdInteractionListener() { |
| | | @Override |
| | | public void onAdClicked(View view, int type) { |
| | | Log.d(TAG, "onAdClicked"); |
| | | } |
| | | |
| | | @Override |
| | | public void onAdShow(View view, int type) { |
| | | Log.d(TAG, "onAdShow"); |
| | | } |
| | | |
| | | @Override |
| | | public void onAdSkip() { |
| | | Log.d(TAG, "onAdSkip"); |
| | | handler.sendMessage(new Message()); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public void onAdTimeOver() { |
| | | Log.d(TAG, "onAdTimeOver"); |
| | | handler.sendMessage(new Message()); |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | viewModel.getTimeOut().observe(this, new Observer<Integer>() { |
| | | @Override |
| | | public void onChanged(Integer integer) { |
| | | handler.sendMessage(new Message()); |
| | | } |
| | | }); |
| | | viewModel.applyTdAd(mContext);;//请求广告 |
| | | } |
| | | |
| | | |
| | | @Override |
| | | protected void onDestroy() { |
| | | super.onDestroy(); |
| | | binding.splashAdContainer.removeAllViews(); |
| | | public void loadData() { |
| | | new Handler().postDelayed(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | Intent intent = new Intent(mContext, MainActivity.class); |
| | | startActivity(intent); |
| | | finish(); |
| | | } |
| | | },2000); |
| | | } |
| | | |
| | | } |