| | |
| | | import android.content.SharedPreferences.Editor; |
| | | import android.content.pm.ActivityInfo; |
| | | import android.database.Cursor; |
| | | import android.graphics.Color; |
| | | import android.net.wifi.WifiInfo; |
| | | import android.net.wifi.WifiManager; |
| | | import android.os.Build; |
| | | import android.os.Bundle; |
| | | import android.util.Log; |
| | | import android.view.KeyEvent; |
| | |
| | | import com.androidquery.AQuery; |
| | | import com.google.gson.Gson; |
| | | import com.google.gson.reflect.TypeToken; |
| | | import com.kwad.sdk.api.KsAdSDK; |
| | | import com.kwad.sdk.api.KsContentPage; |
| | | import com.kwad.sdk.api.KsScene; |
| | | import com.lcjian.library.util.FragmentSwitchHelper; |
| | | import com.lcjian.library.util.ManifestDataUtil; |
| | | import com.lcjian.library.util.common.StringUtils; |
| | | import com.mozillaonline.providers.downloads.DownloadService; |
| | | import com.qq.e.ads.cfg.VideoOption; |
| | |
| | | import com.weikou.beibeivideo.R; |
| | | import com.weikou.beibeivideo.db.MessageTable; |
| | | import com.weikou.beibeivideo.entity.NewComment; |
| | | import com.weikou.beibeivideo.entity.ad.AdPositionEnum; |
| | | import com.weikou.beibeivideo.entity.recommend.HomeTabChangeInfo; |
| | | import com.weikou.beibeivideo.ui.BaseActivity; |
| | | import com.weikou.beibeivideo.ui.baidu.BaiDuNewsFragment; |
| | | import com.weikou.beibeivideo.ui.baidu.BaiDuVideosFragment; |
| | | import com.weikou.beibeivideo.ui.login.LoginActivity; |
| | | import com.weikou.beibeivideo.ui.login.PersonInfoActivity; |
| | | import com.weikou.beibeivideo.ui.mine.BrowserActivity; |
| | |
| | | import com.weikou.beibeivideo.ui.push.PushOpenClickActivity; |
| | | import com.weikou.beibeivideo.ui.recommend.SearchActivity; |
| | | import com.weikou.beibeivideo.util.BeibeiConstant; |
| | | import com.weikou.beibeivideo.util.DimenUtils; |
| | | import com.weikou.beibeivideo.util.ExitDialog; |
| | | import com.weikou.beibeivideo.util.LoginFirstDialog; |
| | | import com.weikou.beibeivideo.util.UserUtil; |
| | | import com.weikou.beibeivideo.util.ad.AdUtil; |
| | | import com.weikou.beibeivideo.util.ad.CSJConstant; |
| | | import com.weikou.beibeivideo.util.ad.GDTConstant; |
| | | import com.weikou.beibeivideo.util.ad.InterstitialAdUtil; |
| | | import com.weikou.beibeivideo.util.ui.TopStatusSettings; |
| | | import com.yeshi.appupdate.AppUpdate; |
| | | import com.yeshi.push.PushUtil; |
| | |
| | | import java.util.Random; |
| | | |
| | | import androidx.annotation.Nullable; |
| | | import androidx.fragment.app.Fragment; |
| | | import androidx.loader.app.LoaderManager; |
| | | import androidx.loader.content.CursorLoader; |
| | | import androidx.loader.content.Loader; |
| | |
| | | |
| | | private AQuery mAQuery; |
| | | |
| | | private Runnable adCallback; |
| | | |
| | | @Override |
| | | protected void onSaveInstanceState(Bundle outState) { |
| | | outState.putString("flash back", "MainActivity flash show"); |
| | | super.onSaveInstanceState(outState); |
| | | } |
| | | |
| | | private Fragment[] getFragments() { |
| | | |
| | | return new Fragment[]{ |
| | | new HomeFragment(), new DrawVideoFragment(getSupportFragmentManager()), |
| | | new DYNewsFragment(getSupportFragmentManager()), new MineFragment(), new NovelFragment(getSupportFragmentManager()) |
| | | |
| | | }; |
| | | } |
| | | |
| | | private void navClick(RadioGroup group, int checkedId) { |
| | | setSearchBarVisibility(); |
| | | switch (checkedId) { |
| | | case R.id.rb_nav_recommend: { |
| | | mFragmentSwitchHelper |
| | | .changeFragment(HomeFragment.class); |
| | | } |
| | | break; |
| | | case R.id.rb_nav_draw_video: { |
| | | mFragmentSwitchHelper |
| | | .changeFragment(DrawVideoFragment.class); |
| | | } |
| | | break; |
| | | case R.id.rb_nav_discover: { |
| | | mFragmentSwitchHelper |
| | | .changeFragment(DYNewsFragment.class); |
| | | } |
| | | break; |
| | | case R.id.rb_nav_novel: { |
| | | mFragmentSwitchHelper |
| | | .changeFragment(NovelFragment.class); |
| | | } |
| | | break; |
| | | case R.id.rb_nav_mine: { |
| | | mFragmentSwitchHelper.changeFragment(MineFragment.class); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | |
| | | @Override |
| | |
| | | findViewById(R.id.ll_activity_login).setOnClickListener(this); |
| | | findViewById(R.id.fl_category).setOnClickListener(this); |
| | | |
| | | TopStatusSettings.setStatusViewAndDeepColor(this); |
| | | |
| | | initialer.run(); |
| | | |
| | | mFragmentSwitchHelper = FragmentSwitchHelper.create( |
| | | R.id.fl_main_fragment_container, getSupportFragmentManager(), |
| | | new HomeFragment(), new KSVideoFragment(), |
| | | BaiDuVideosFragment.newInstance(), new MineFragment(), GoldCornFragment.newInstance()); |
| | | R.id.fl_main_fragment_container, getSupportFragmentManager(), getFragments() |
| | | ); |
| | | rg_nav = findViewById(R.id.rg_nav); |
| | | rg_nav.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { |
| | | |
| | | @Override |
| | | public void onCheckedChanged(RadioGroup group, int checkedId) { |
| | | switch (checkedId) { |
| | | case R.id.rb_nav_recommend: { |
| | | mFragmentSwitchHelper |
| | | .changeFragment(HomeFragment.class); |
| | | if (!YouthUtil.isOpenYouthMode(getApplicationContext())) |
| | | mAQuery.id(R.id.ll_top).visibility(View.VISIBLE); |
| | | } |
| | | break; |
| | | case R.id.rb_guess_like: { |
| | | mAQuery.id(R.id.ll_top).visibility(View.GONE); |
| | | mFragmentSwitchHelper |
| | | .changeFragment(KSVideoFragment.class); |
| | | |
| | | fl_category.post(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | ((KSVideoFragment) mFragmentSwitchHelper.getFragmentByName(KSVideoFragment.class.getName())).init(getSupportFragmentManager(), ksContentPage.getFragment()); |
| | | } |
| | | }); |
| | | |
| | | |
| | | } |
| | | break; |
| | | case R.id.rb_gold_corn: { |
| | | if (!YouthUtil.isOpenYouthMode(getApplicationContext())) |
| | | mAQuery.id(R.id.ll_top).visibility(View.VISIBLE); |
| | | mFragmentSwitchHelper |
| | | .changeFragment(GoldCornFragment.class); |
| | | } |
| | | break; |
| | | case R.id.rb_nav_discover: { |
| | | if (!YouthUtil.isOpenYouthMode(getApplicationContext())) |
| | | mAQuery.id(R.id.ll_top).visibility(View.VISIBLE); |
| | | mFragmentSwitchHelper |
| | | .changeFragment(BaiDuVideosFragment.class); |
| | | } |
| | | break; |
| | | case R.id.rb_nav_mine: { |
| | | if (!YouthUtil.isOpenYouthMode(getApplicationContext())) |
| | | mAQuery.id(R.id.ll_top).visibility(View.VISIBLE); |
| | | mFragmentSwitchHelper.changeFragment(MineFragment.class); |
| | | } |
| | | break; |
| | | } |
| | | navClick(group, checkedId); |
| | | } |
| | | }); |
| | | getHotSearch(); |
| | |
| | | }); |
| | | } |
| | | }); |
| | | KsScene adScene = new KsScene.Builder(8010000001L).build(); |
| | | ksContentPage = KsAdSDK.getLoadManager().loadContentPage(adScene); |
| | | //显示广告 |
| | | showInterstitialAd(); |
| | | } |
| | | |
| | | private KsContentPage ksContentPage; |
| | | |
| | | /** |
| | | * 预加载广告 |
| | |
| | | if (YouthUtil.isOpenYouthMode(getApplicationContext())) { |
| | | mAQuery.id(R.id.ll_top).visibility(View.GONE); |
| | | mAQuery.id(R.id.rb_nav_discover).visibility(View.GONE); |
| | | mAQuery.id(R.id.rb_gold_corn).visibility(View.GONE); |
| | | mAQuery.id(R.id.rb_guess_like).visibility(View.GONE); |
| | | ((RadioGroup) mAQuery.id(R.id.rg_nav).getView()).setPadding(0, DimenUtils.dip2px(getApplicationContext(), 5), 0, 0); |
| | | mAQuery.id(R.id.rb_nav_draw_video).visibility(View.GONE); |
| | | mAQuery.id(R.id.rb_nav_novel).visibility(View.GONE); |
| | | } else { |
| | | mAQuery.id(R.id.ll_top).visibility(View.VISIBLE); |
| | | mAQuery.id(R.id.rb_nav_discover).visibility(View.VISIBLE); |
| | | mAQuery.id(R.id.rb_gold_corn).visibility(View.VISIBLE); |
| | | mAQuery.id(R.id.rb_guess_like).visibility(View.VISIBLE); |
| | | ((RadioGroup) mAQuery.id(R.id.rg_nav).getView()).setPadding(0, 0, 0, 0); |
| | | setSearchBarVisibility(); |
| | | mAQuery.id(R.id.rb_nav_draw_video).visibility(View.VISIBLE); |
| | | //Android 5.0以上且不是正在上线 |
| | | if (AdUtil.isCanInitCSJ() && AdUtil.getAdType(getApplicationContext(), AdPositionEnum.splashHotStart) != null) { |
| | | mAQuery.id(R.id.rb_nav_discover).visibility(View.VISIBLE); |
| | | mAQuery.id(R.id.rb_nav_novel).visibility(View.VISIBLE); |
| | | } else { |
| | | mAQuery.id(R.id.rb_nav_discover).visibility(View.GONE); |
| | | mAQuery.id(R.id.rb_nav_novel).visibility(View.GONE); |
| | | } |
| | | // ((RadioGroup) mAQuery.id(R.id.rg_nav).getView()).setPadding(0, 0, 0, 0); |
| | | } |
| | | } |
| | | |
| | | private void setSearchBarVisibility() { |
| | | if (YouthUtil.isOpenYouthMode(getApplicationContext())) { |
| | | mAQuery.id(R.id.ll_top).visibility(View.GONE); |
| | | } else { |
| | | if (mAQuery.id(R.id.rb_nav_draw_video).isChecked() || mAQuery.id(R.id.rb_nav_novel).isChecked() || mAQuery.id(R.id.rb_nav_discover).isChecked()) { |
| | | mAQuery.id(R.id.ll_top).visibility(View.GONE); |
| | | } else { |
| | | mAQuery.id(R.id.ll_top).visibility(View.VISIBLE); |
| | | } |
| | | if (mAQuery.id(R.id.rb_nav_draw_video).isChecked()) { |
| | | // mAQuery.id(R.id.v_status_bar).background(Color.BLACK); |
| | | //TODO 设置状态栏为深色 |
| | | TopStatusSettings.setStatusViewAndLightColor(this); |
| | | } else { |
| | | // mAQuery.id(R.id.v_status_bar).backgroundColor(Color.WHITE); |
| | | //状态栏为浅色 |
| | | TopStatusSettings.setStatusViewAndDeepColor(this); |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | AppUpdate.destoryAppUpdate(); |
| | | } |
| | | |
| | | @Override |
| | | protected void onDestroy() { |
| | | super.onDestroy(); |
| | | if (adCallback != null && rg_nav != null) { |
| | | rg_nav.removeCallbacks(adCallback); |
| | | } |
| | | } |
| | | |
| | | |
| | | //显示插屏广告 |
| | | private void showInterstitialAd() { |
| | | |
| | | final AdUtil.AD_TYPE adType = AdUtil.getAdType(getApplicationContext(), AdPositionEnum.homeInterstitial); |
| | | if (adType == null) { |
| | | return; |
| | | } |
| | | |
| | | adCallback = new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | AdUtil.AD_TYPE type = adType; |
| | | //Android 5.0以下广告兼容 |
| | | if (type == AdUtil.AD_TYPE.csj && !AdUtil.isCanInitCSJ()) { |
| | | type = AdUtil.AD_TYPE.gdt; |
| | | } |
| | | |
| | | if (type == AdUtil.AD_TYPE.csj) { |
| | | InterstitialAdUtil.showAd(MainActivity.this, type, CSJConstant.HOME_INTERSTITIALAD); |
| | | } else { |
| | | InterstitialAdUtil.showAd(MainActivity.this, type, GDTConstant.HOME_INTERSTITIAL); |
| | | } |
| | | |
| | | |
| | | } |
| | | }; |
| | | //延迟三秒显示 |
| | | rg_nav.postDelayed(adCallback, 3000); |
| | | } |
| | | |
| | | private String callCmd(String cmd, String filter) { |
| | | String result = ""; |
| | |
| | | return; |
| | | |
| | | try { |
| | | setSearchBarVisibility(); |
| | | switch (Integer.parseInt(position)) { |
| | | case 0: |
| | | findViewById(R.id.rb_nav_recommend).performClick(); |
| | |
| | | }); |
| | | break; |
| | | case 1: |
| | | findViewById(R.id.rb_nav_discover).performClick(); |
| | | findViewById(R.id.rb_nav_draw_video).performClick(); |
| | | break; |
| | | case 2: |
| | | findViewById(R.id.rb_gold_corn).performClick(); |
| | | findViewById(R.id.rb_nav_discover).performClick(); |
| | | break; |
| | | case 3: |
| | | findViewById(R.id.rb_guess_like).performClick(); |
| | | findViewById(R.id.rb_nav_novel).performClick(); |
| | | break; |
| | | case 4: |
| | | findViewById(R.id.rb_nav_mine).performClick(); |