|
|
|
@ -114,6 +114,14 @@ public class AppMaster {
|
|
|
|
|
public void start() {
|
|
|
|
|
|
|
|
|
|
new Thread(new Runnable() {
|
|
|
|
|
|
|
|
|
|
void sleep(long ms) {
|
|
|
|
|
try {
|
|
|
|
|
Thread.sleep(ms);
|
|
|
|
|
} catch (Exception ex) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
public void run() {
|
|
|
|
|
|
|
|
|
@ -121,31 +129,24 @@ public class AppMaster {
|
|
|
|
|
|
|
|
|
|
if (separateNetwork) {
|
|
|
|
|
try {
|
|
|
|
|
ConnectivityManager connectivityManager = (ConnectivityManager) mService.getSystemService(Context.CONNECTIVITY_SERVICE);
|
|
|
|
|
Network previousNetwork = connectivityManager.getActiveNetwork();
|
|
|
|
|
String previousNetworkStr = previousNetwork.toString();
|
|
|
|
|
|
|
|
|
|
mService.logger.info("Switch to Simcard 2");
|
|
|
|
|
SysApi.selectSimCard4Data(mService.getApplicationContext(), 2);
|
|
|
|
|
Thread.sleep(100);
|
|
|
|
|
sleep(100);
|
|
|
|
|
|
|
|
|
|
boolean connected = false;
|
|
|
|
|
ConnectivityManager connectivityManager = (ConnectivityManager) mService.getSystemService(Context.CONNECTIVITY_SERVICE);
|
|
|
|
|
|
|
|
|
|
for (int idx = 0; idx < 8; idx++) {
|
|
|
|
|
Network[] networks = connectivityManager.getAllNetworks();
|
|
|
|
|
if (networks != null && networks.length > 0) {
|
|
|
|
|
for (Network nw : networks) {
|
|
|
|
|
NetworkInfo ni = connectivityManager.getNetworkInfo(nw);
|
|
|
|
|
|
|
|
|
|
if (ni.getType() == 0) {
|
|
|
|
|
connected = true;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (connected) {
|
|
|
|
|
Network network = connectivityManager.getActiveNetwork();
|
|
|
|
|
if (!network.equals(previousNetwork)) {
|
|
|
|
|
mService.logger.info("Network Changed from " + previousNetworkStr + " to " + network.toString());
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Thread.sleep(1000);
|
|
|
|
|
sleep(1000);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
@ -164,6 +165,15 @@ public class AppMaster {
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception ex) {
|
|
|
|
|
ex.printStackTrace();
|
|
|
|
|
} finally {
|
|
|
|
|
try {
|
|
|
|
|
if (!mService.isMntnMode()) {
|
|
|
|
|
mService.logger.info("Switch to Simcard 1");
|
|
|
|
|
SysApi.selectSimCard4Data(mService.getApplicationContext(), 1);
|
|
|
|
|
}
|
|
|
|
|
} catch (Exception ex) {
|
|
|
|
|
ex.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
try {
|
|
|
|
|