package com.sprintwind.packetcapturetool;
import com.baidu.appx.BDBannerAd;
import com.baidu.appx.BDBannerAd.BannerAdListener;
import com.baidu.mobstat.StatService;
import com.sprintwind.packetcapturetool.R;
import android.annotation.TargetApi;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.RelativeLayout;
import android.widget.Toast;
@TargetApi(Build.VERSION_CODES.HONEYCOMB) public class MainActivity extends Activity {
private Fragment[] fragments;
private FragmentManager fragmentManager;
private FragmentTransaction fragmentTransaction;
private RadioGroup rdgrpBottomMenu;
private RelativeLayout appxBannerContainer;
private static BDBannerAd bannerAdView;
private static final String TAG = "sprintwind";
private long exitTime = 0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
fragments = new Fragment[3];
fragmentManager = getFragmentManager();
fragments[0] = fragmentManager.findFragmentById(R.id.frgmntCapture);
fragments[1] = fragmentManager.findFragmentById(R.id.frgmntAnalyze);
fragments[2] = fragmentManager.findFragmentById(R.id.frgmntMore);
fragmentTransaction = fragmentManager.beginTransaction()
.hide(fragments[0]).hide(fragments[1]).hide(fragments[2]);
fragmentTransaction.show(fragments[0]).commit();
setFragmentIndicator();
bannerAdView = new BDBannerAd(this, "CgK84vIbCSHjBP79f62GqzFFRWveWCIW",
"d7u2VhB9RAKKB3j4k0R4PcMn");
bannerAdView.setAdSize(BDBannerAd.SIZE_320X50);
bannerAdView.setAdListener(new BannerAdListener() {
@Override
public void onAdvertisementDataDidLoadFailure() {
Log.e(TAG, "load failure");
}
@Override
public void onAdvertisementDataDidLoadSuccess() {
Log.e(TAG, "load success");
}
@Override
public void onAdvertisementViewDidClick() {
Log.e(TAG, "on click");
}
@Override
public void onAdvertisementViewDidShow() {
Log.e(TAG, "on show");
}
@Override
public void onAdvertisementViewWillStartNewIntent() {
Log.e(TAG, "leave app");
}
});
// ŽŽœš¹ãžæÈÝÆ÷
appxBannerContainer = (RelativeLayout) findViewById(R.id.appx_banner_container);
// ÏÔÊŸ¹ãžæÊÓÍŒ
appxBannerContainer.addView(bannerAdView);
}
private void setFragmentIndicator() {
rdgrpBottomMenu = (RadioGroup) findViewById(R.id.rdgrpBottomMenu);
rdgrpBottomMenu.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
fragmentTransaction = fragmentManager.beginTransaction()
.hide(fragments[0]).hide(fragments[1]).hide(fragments[2]);
switch (checkedId) {
case R.id.rdbttnCapture:
fragmentTransaction.show(fragments[0]).commit();
break;
case R.id.rdbttnAnalyze:
fragmentTransaction.show(fragments[1]).commit();
break;
case R.id.rdbttnMore:
fragmentTransaction.show(fragments[2]).commit();
break;
default:
break;
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_share) {
Intent intent=new Intent(Intent.ACTION_SEND);
intent.setType("text/*");
intent.putExtra(Intent.EXTRA_SUBJECT, "分享");
intent.putExtra(Intent.EXTRA_TEXT, getString(R.string.share_string));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(Intent.createChooser(intent, "分享"+getTitle()));
return true;
}
return super.onOptionsItemSelected(item);
}
/* 监听返回键按下事件 */
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN){
if((System.currentTimeMillis()-exitTime) > 2000){
Toast.makeText(getApplicationContext(), getString(R.string.press_to_exit), Toast.LENGTH_SHORT).show();
exitTime = System.currentTimeMillis();
} else {
/* 取消注册网络变化通知 */
//unregisterReceiver(broadcastReceiver);
finish();
System.exit(0);
}
return true;
}
return super.onKeyDown(keyCode, event);
}
public void onResume() {
super.onResume();
System.out.println("FragmentDemoActivity-->onResume");
/**
* 页面起始(注意: 每个Activity中都需要添加,如果有继承的父Activity中已经添加了该调用,那么子Activity中务必不能添加)
* 如果该FragmentActivity包含了几个全页面的fragment,那么可以在fragment里面加入就可以了,这里可以不加入。如果不加入将不会记录该Activity页面。
*/
StatService.onResume(this);
}
public void onPause() {
super.onPause();
System.out.println("FragmentDemoActivity-->onPause");
/**
* 页面结束(注意: 每个Activity中都需要添加,如果有继承的父Activity中已经添加了该调用,那么子Activity中务必不能添加)
* 如果该FragmentActivity包含了几个全页面的fragment,那么可以在fragment里面加入就可以了,这里可以不加入。如果不加入将不会记录该Activity页面。
*/
StatService.onPause(this);
}
}