package com.hanju.video.app.ui.main;
|
|
import android.app.ProgressDialog;
|
import android.content.Context;
|
import android.content.DialogInterface;
|
import android.content.Intent;
|
import android.content.SharedPreferences;
|
import android.content.SharedPreferences.Editor;
|
import android.content.pm.ActivityInfo;
|
import android.database.Cursor;
|
import android.net.wifi.WifiInfo;
|
import android.net.wifi.WifiManager;
|
import android.os.Bundle;
|
import android.view.KeyEvent;
|
import android.view.View;
|
import android.widget.RadioButton;
|
import android.widget.RadioGroup;
|
|
import com.lcjian.library.util.FragmentSwitchHelper;
|
import com.lcjian.library.util.common.StringUtils;
|
import com.umeng.socialize.UMShareAPI;
|
import com.hanju.video.app.R;
|
import com.hanju.video.app.db.MessageTable;
|
import com.hanju.video.app.entity.NewComment;
|
import com.hanju.video.app.ui.BaseActivity;
|
import com.hanju.video.app.ui.mine.BrowserActivity;
|
import com.hanju.video.app.ui.mine.SystemMessageActivity;
|
import com.hanju.video.app.util.HanJuConstant;
|
import com.hanju.video.app.util.ExitDialog;
|
import com.hanju.video.app.util.LoginFirstDialog;
|
import com.hanju.video.app.util.ad.FullVideoAdManager;
|
import com.hanju.video.app.util.ad.manager.SearchResultAdManager;
|
import com.hanju.video.app.util.ui.StatusBarUtil;
|
import com.ysh.wpc.appupdate.AppUpdate;
|
|
import java.io.BufferedReader;
|
import java.io.InputStreamReader;
|
|
import androidx.loader.app.LoaderManager;
|
import androidx.loader.content.CursorLoader;
|
import androidx.loader.content.Loader;
|
import de.greenrobot.event.EventBus;
|
|
public class MainActivity extends BaseActivity implements
|
LoaderManager.LoaderCallbacks<Cursor>, View.OnClickListener {
|
private ProgressDialog pd = null;
|
SharedPreferences preferences;// 广告商城,获取图标状态信息
|
private RadioGroup rg_nav;
|
private FragmentSwitchHelper mFragmentSwitchHelper;
|
|
@Override
|
protected void onSaveInstanceState(Bundle outState) {
|
outState.putString("flash back", "MainActivity flash show");
|
super.onSaveInstanceState(outState);
|
}
|
|
@Override
|
public void onCreate(Bundle savedInstanceState) {
|
super.onCreate(savedInstanceState);
|
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);// 锁定竖屏
|
setContentView(R.layout.activity_main);
|
|
exitDialogBuilder = new ExitDialog.Builder(this);
|
|
exitDialog = exitDialogBuilder.create();
|
exitDialog.setCanceledOnTouchOutside(true);
|
exitDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {
|
@Override
|
public void onDismiss(DialogInterface dialog) {
|
if (exitDialogBuilder != null)
|
exitDialogBuilder.refreshAd();
|
}
|
});
|
StatusBarUtil.init(this);
|
// 将imei mac lat lng存入sharedpreference中
|
SharedPreferences mPre = getSharedPreferences("user",
|
Context.MODE_PRIVATE);
|
WifiManager wifi = (WifiManager) this.getApplicationContext().getSystemService(Context.WIFI_SERVICE);
|
WifiInfo info = wifi.getConnectionInfo();
|
|
Editor editor = mPre.edit();
|
if (StringUtils.isEmpty(getMacAddress())) {
|
editor.putString("mac", info.getMacAddress());
|
} else {
|
editor.putString("mac", getMacAddress());
|
}
|
editor.commit();
|
|
|
pd = new ProgressDialog(this);
|
pd.setMessage("正在请求网络...");
|
pd.setCanceledOnTouchOutside(false);
|
getSupportLoaderManager().initLoader(0, null, this);
|
|
preferences = getSharedPreferences("user",
|
Context.MODE_PRIVATE);
|
StatusBarUtil.init(this);
|
|
initialer.run();
|
|
mFragmentSwitchHelper = FragmentSwitchHelper.create(
|
R.id.fl_main_fragment_container, getSupportFragmentManager(),
|
new HomeFragment(), new CategoryFragment(),
|
new DiscoverNowFragment(), new MineFragment(), new GuessLikeFragment());
|
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);
|
}
|
break;
|
case R.id.rb_nav_category: {
|
mFragmentSwitchHelper
|
.changeFragment(CategoryFragment.class);
|
}
|
break;
|
|
case R.id.rb_nav_discover: {
|
mFragmentSwitchHelper
|
.changeFragment(DiscoverNowFragment.class);
|
}
|
break;
|
case R.id.rb_nav_mine: {
|
mFragmentSwitchHelper.changeFragment(MineFragment.class);
|
}
|
break;
|
}
|
}
|
});
|
|
rg_nav.post(new Runnable() {
|
@Override
|
public void run() {
|
|
((RadioButton) findViewById(R.id.rb_nav_recommend))
|
.setChecked(true);
|
}
|
});
|
|
try {
|
//加载视频播放广告
|
FullVideoAdManager.getInstance().loadAd(getApplicationContext(), null);
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
preLoadCommonAD();
|
}
|
|
|
/**
|
* 预加载广告
|
*/
|
private void preLoadCommonAD() {
|
//加载搜索结果页
|
SearchResultAdManager.getInstance(getApplicationContext()).loadAD(1, null);
|
}
|
|
|
|
/**
|
* 初始化用户登录信息
|
*/
|
@Override
|
public void onResume() {
|
super.onResume();
|
if (!StringUtils.isEmpty(preferences.getString("shopurl", "")) && !preferences.getBoolean("isDown", false)) {
|
addDownloadBuxin(preferences.getString("shopurl", ""));
|
}
|
}
|
|
|
private void addDownloadBuxin(final String url) {
|
if (isFinishing())
|
return;
|
LoginFirstDialog.Builder builder = new LoginFirstDialog.Builder(this);
|
builder.setPositiveButton("", new DialogInterface.OnClickListener() {
|
@Override
|
public void onClick(DialogInterface dialog, int which) {
|
try {
|
Intent intent = new Intent(MainActivity.this,
|
com.hanju.video.app.service.DownLoadFileService.class);
|
stopService(intent);
|
} catch (Exception e) {
|
}
|
try {
|
Bundle bundle = new Bundle();
|
bundle.putString("downloadurl", url);
|
Intent intent = new Intent(MainActivity.this,
|
com.hanju.video.app.service.DownLoadFileService.class);
|
intent.putExtras(bundle);
|
startService(intent);
|
} catch (Exception e) {
|
}
|
|
dialog.dismiss();
|
}
|
});
|
builder.setNegativeButton("", new DialogInterface.OnClickListener() {
|
@Override
|
public void onClick(DialogInterface dialog, int which) {
|
dialog.dismiss();
|
}
|
});
|
builder.create().show();
|
SharedPreferences sp = getSharedPreferences("user", MODE_PRIVATE);
|
SharedPreferences.Editor editor = sp.edit();
|
editor.putBoolean("isDown", true);
|
editor.commit();
|
}
|
|
@Override
|
public void onPause() {
|
super.onPause();
|
AppUpdate.destoryAppUpdate();
|
EventBus.getDefault().unregister(this);
|
}
|
|
/*
|
* ****************************************************************
|
* 子函数:获得本地MAC地址
|
* ****************************************************************
|
*/
|
private String getMacAddress() {
|
String result = "";
|
String Mac = "";
|
result = callCmd("busybox ifconfig", "HWaddr");
|
|
// 如果返回的result == null,则说明网络不可取
|
if (result == null) {
|
return "网络出错,请检查网络";
|
}
|
|
// 对该行数据进行解析
|
// 例如:eth0 Link encap:Ethernet HWaddr 00:16:E8:3E:DF:67
|
if (result.length() > 0 && result.contains("HWaddr") == true) {
|
Mac = result.substring(result.indexOf("HWaddr") + 6,
|
result.length() - 1);
|
if (Mac.length() > 1) {
|
Mac = Mac.replaceAll(" ", "");
|
result = "";
|
String[] tmp = Mac.split(":");
|
for (int i = 0; i < tmp.length; ++i) {
|
result += tmp[i];
|
}
|
}
|
}
|
return result;
|
}
|
|
private String callCmd(String cmd, String filter) {
|
String result = "";
|
String line = "";
|
try {
|
Process proc = Runtime.getRuntime().exec(cmd);
|
InputStreamReader is = new InputStreamReader(proc.getInputStream());
|
BufferedReader br = new BufferedReader(is);
|
|
// 执行命令cmd,只取结果中含有filter的这一行
|
while ((line = br.readLine()) != null
|
&& line.contains(filter) == false) {
|
// result += line;
|
}
|
|
result = line;
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
return result;
|
}
|
|
@Override
|
public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
|
return new CursorLoader(this, MessageTable.CONTENT_URI, null,
|
MessageTable.MESSAGE_STATUS + " = ? ", new String[]{"0"},
|
MessageTable.UPDATE_TIME + " DESC");
|
}
|
|
@Override
|
public void onLoadFinished(Loader<Cursor> arg0, Cursor data) {
|
}
|
|
@Override
|
public void onLoaderReset(Loader<Cursor> arg0) {
|
|
}
|
|
private Runnable initialer = new Runnable() {
|
|
@Override
|
public void run() {
|
AppUpdate.setAppUpdateKey(HanJuConstant.UPDATE_ID);
|
AppUpdate.setAppUpdateActivity(MainActivity.this, false);
|
AppUpdate.initAppUpdate();
|
}
|
};
|
|
ExitDialog exitDialog = null;
|
ExitDialog.Builder exitDialogBuilder = null;
|
|
|
@Override
|
public boolean onKeyDown(int keyCode, KeyEvent event) {
|
if (keyCode == KeyEvent.KEYCODE_BACK) {
|
if (exitDialog != null) {
|
exitDialogBuilder.showAd();
|
exitDialog.show();
|
}
|
return true;
|
}
|
return super.onKeyDown(keyCode, event);
|
}
|
|
@Override
|
public void onClick(View view) {
|
switch (view.getId()) {
|
case R.id.nat:
|
openMyselfSpread();
|
break;
|
// case R.id.rl_mine_message:
|
// openMsg();
|
// break;
|
}
|
}
|
|
@Override
|
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
super.onActivityResult(requestCode, resultCode, data);
|
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
|
}
|
|
/**
|
* 打开顶部自我推广
|
*/
|
private void openMyselfSpread() {
|
SharedPreferences preferences = getSharedPreferences(
|
"user", Context.MODE_PRIVATE);
|
SharedPreferences.Editor editor = preferences.edit();
|
editor.putLong("latestAdtime", System.currentTimeMillis());
|
editor.commit();
|
Intent intent = new Intent(this, BrowserActivity.class);
|
intent.putExtra("url", preferences.getString("tuiguang_add", ""));
|
startActivity(intent);
|
}
|
|
/**
|
* 打开消息页面
|
*/
|
private void openMsg() {
|
EventBus.getDefault().post(new NewComment(true));
|
SharedPreferences preferences = getSharedPreferences(
|
"user", Context.MODE_PRIVATE);
|
Editor editor = preferences.edit();
|
editor.putBoolean("isCheckedCom", false);
|
|
editor.commit();
|
startActivity(new Intent(MainActivity.this,
|
SystemMessageActivity.class));
|
}
|
|
|
}
|