Android(判断wifi是否开启,手机屏幕状态,sdcard是否被拔出,设置全屏)

 

       第一个问题判断手机当前上网用的是sim卡还是wifi,我写了一个封装的方法,以后可以拿来用:

    /**
     * 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);
        //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;
    }


第二个例子:判断当前的手机屏幕是否开启了旋转屏幕这个选项:
        

             /**
        	 * 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;


第三个是在代码中注册监听内存卡状态的广播: 

        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()方法中释放。

 

  在代码中写个内部类的广播:

<SPAN style="COLOR: #000000; FONT-SIZE: 16px">private final BroadcastReceiver sdcardListener=new BroadcastReceiver() {
		
		public void onReceive(Context context, Intent intent) {
			Toast.makeText(SummaryAppMainActivityActivity.this, R.string.sd_removed, 2000).show();
		}
    };</SPAN>


  第四个是全屏的设置:写一个简单的方法中;

 <SPAN style="COLOR: #000000; FONT-SIZE: 16px"> //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">今天先整理这么少吧,抽空把知识串联一下!呵呵,睡觉了,下次见!
今天参加移动语音开发者大会,见到了柳传志和李开复雷军没有到场,有点遗憾。呵呵,有点收获,听了他们现场的访谈!
</SPAN>
</STRONG></SPAN>


 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值