モバイルデータのON/OFFの変更と、今のON/OFFの確認を行うプログラムです。
使用方法は、
初期化
MobileData mobileData = new MobileData(getApplicationContext());
ON/OFF変更
mobileData.setEnabled(true or false);
ON/OFF状態確認
mobileData.isEnabled();
という感じです。たぶん、android2.3.3以降なら動作すると思います。
ソース
#########################################################################
public class MobileData extends Service
{
Context mContextData;
MobileData(Context context)
{
mContextData = context;
}
// モバイルデータ状態確認
// ON:true
// OFF:false
protected boolean isEnabled()
{
final ConnectivityManager cm = (ConnectivityManager) mContextData.getSystemService(Context.CONNECTIVITY_SERVICE);
boolean result = false;
try{
Method method=cm.getClass().getMethod("getMobileDataEnabled");
method.setAccessible(true);
result = Boolean.TRUE.equals(method.invoke(cm));
}catch(Exception e){
e.printStackTrace();
Util.logLib( "error");
}
return result;
}
// モバイルデータ設定
protected void setEnabled(boolean isChecked)
{
final ConnectivityManager cm = (ConnectivityManager) mContextData.getSystemService(Context.CONNECTIVITY_SERVICE);
try{
final Method method=cm.getClass().getMethod("setMobileDataEnabled", Boolean.TYPE);
method.setAccessible(true);
method.invoke(cm, isChecked);
}catch(final Exception e){
e.printStackTrace();
}
}
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
}
#########################################################################
0 件のコメント:
コメントを投稿