第一個問題:判斷手機當前上網用的是sim卡還是wifi,我寫了一個封裝的方法,以後可以拿來用:
[java]
view plaincopyprint?
- /**
- * check the internet is
- * mobile or wifi
- * add by wangxianming
- * in 2012-03-22
- */
- private boolean checkWifi() {
- boolean isWifiConnect = true;
- ConnectivityManager cm = (ConnectivityManager)mContext.getSystemService(Context.CONNECTIVITY_SERVICE);
[java]
view plaincopyprint?
- //check the networkInfos numbers
- NetworkInfo[] networkInfos = cm.getAllNetworkInfo();
- for (int i = 0; i<networkInfos.length; i++) {
- if (networkInfos[i].getState() == NetworkInfo.State.CONNECTED) {
- if(networkInfos[i].getType() == cm.TYPE_MOBILE) {
- isWifiConnect = false;
- }
- if(networkInfos[i].getType() == cm.TYPE_WIFI) {
- isWifiConnect = true;
- }
- }
- }
- return isWifiConnect;
第二個例子:判斷當前的手機螢幕是否開啟了旋轉螢幕這個選項:
[java]
view plaincopyprint?
- /**
- * ACCELEROMETER_ROTATION---->explain:
- *
- * Control whether the accelerometer will be
- * used to change screen orientation.
- * If 0, it will not be used unless explicitly
- * requested by the application;
- * if 1, it will be used by default
- * unless explicitly disabled by the application.
- * Constant Value: "accelerometer_rotation"
- */
- systemGravity = Settings.System.getInt(this
- .getContentResolver(),
- Settings.System.ACCELEROMETER_ROTATION);//1 is open;0 is close;
第三個是在代碼中註冊監聽記憶卡狀態的廣播:
[java]
view plaincopyprint?
- IntentFilter intentFilter=new IntentFilter);
- intentFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);
- intentFilter.addAction(Intent.ACTION_MEDIA_EJECT);
- intentFilter.addAction(Intent.ACTION_MEDIA_REMOVED);
- intentFilter.addAction(Intent.ACTION_MEDIA_BAD_REMOVAL);
- registerReceiver(sdcardListener,intentFilter);
有registerReceiver()註冊廣播,就有unregisterReceiver()方法,他們是成對出現的。
如果在onCreate()方法中註冊廣播,就在onDestroy()方法中釋放。
如果在onResume()方法中註冊廣播,就在onPause()方法中釋放。
在代碼中寫個內部類的廣播:
[java]
view plaincopyprint?
- <span style="font-size:16px;color:#000000;">private final BroadcastReceiver sdcardListener=new BroadcastReceiver() {
-
- public void onReceive(Context context, Intent intent) {
- Toast.makeText(SummaryAppMainActivityActivity.this, R.string.sd_removed, 2000).show();
- }
- };</span>
第四個是全屏的設定:寫一個簡單的方法中;
[java]
view plaincopyprint?
- <span style="font-size:16px;color:#000000;"> //set the activity is fullScreen
- private void setFullScreen() {
- misFullscreen = !misFullscreen;
- if (misFullscreen) {
- getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
- WindowManager.LayoutParams.FLAG_FULLSCREEN);
- } else {
- getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
- }
- }</span>
- <span style="color:#ff6600;"><strong><span style="font-size:18px;">今天先整理這麼少吧,抽空把知識串聯一下!呵呵,睡覺了,下次見!
- 今天參加移動語音開發人員大會,見到了柳傳志和李開複雷軍沒有到場,有點遺憾。呵呵,有點收穫,聽了他們現場的訪談!