私はパケットデータをオンにするためにこの関数を使用しています:
public static void setDataNetworkEnable(Context mContext) {
try {
ConnectivityManager conman = (ConnectivityManager) mContext
.getSystemService(Context.CONNECTIVITY_SERVICE);
Class<?> conmanClass = Class.forName(conman.getClass().getName());
Field iConnectivityManagerField = conmanClass
.getDeclaredField("mService");
iConnectivityManagerField.setAccessible(true);
Object iConnectivityManager = iConnectivityManagerField.get(conman);
Class<?> iConnectivityManagerClass = Class
.forName(iConnectivityManager.getClass().getName());
Method setMobileDataEnabledMethod = iConnectivityManagerClass
.getDeclaredMethod("setMobileDataEnabled", Boolean.TYPE);
setMobileDataEnabledMethod.setAccessible(true);
setMobileDataEnabledMethod.invoke(iConnectivityManager, true);
} catch (Exception e) {
e.printStackTrace();
}
}
デュアルSIMスマホでは使えませんが…
解決策はありますか?