제가 앱을 만들어 본 경험이 없어서요 인터넷에서 자료를 찾아 보고 만들었는데요
LTE가 연결된 끄고 켜기를 자동으로 하고 싶습니다.
네트워크가 연결 되면 특정 웹 사이트 A경로로 갔다가 B 경로로 가게 하고 싶습니다.
그런데 일부(팬텍 베가3)폰에서는 A로는 이동되고 B로 이동에 안되네요 스레드에 sleep시간을 늘리거나 줄여 봐도 비슷하네요
그리고 데이터(LTE)를 끄고 켜고를 계속 하면서 웹 사이트 연결이 되었다 안되었다 하는데요
원인을 모르겠습니다.
아래는 전체 소스 입니다.
간단한 힌트라도 환영합니다 답변 부탁 드립니다.
일부 소스
//데이터 켜고 끄기
public void TurnDataNetwork(boolean enabled){
ConnectivityManager dataManager;
dataManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
Method dataMtd = null;
try {
dataMtd = ConnectivityManager.class.getDeclaredMethod("setMobileDataEnabled", boolean.class);
} catch (NoSuchMethodException e){
e.printStackTrace();
}
dataMtd.setAccessible(true);
try {
dataMtd.invoke(dataManager, enabled);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
class clockThread extends Thread{
public clockThread(){
}
@Override
public void run(){
super.run();
boolean isThread = GlobalVar2.getInstance().get_bb_Thread();
isThread = true;
int cnt = 1;
while (isThread){
Log.i("#####", "cnt:"+cnt);
try{
if(isThread == true){
//데이터끄기
TurnDataNetwork(false);
while(true){
//중지버튼클릭시 중지
if(isThread == false){
break;
}
if(checkNetworkstate() == false){
loadHandler.sendEmptyMessageDelayed(0, 200);
Log.i("#####", "OFF1");
break;
}
//threadToast("DATA : ON");
Log.i("#####", "ON");
movieIntent("http://m.naver.com");
//loadHandler.sendEmptyMessageDelayed(0, 10000);
Thread.sleep(3000);
movieIntent("http://m.daum.net");
//loadHandler.sendEmptyMessageDelayed(0, 5000);
Thread.sleep(3000);
}
//중지버튼클릭시 중지
if(isThread == false)
break;
if(checkNetworkstate() == false){
TurnDataNetwork(true);
while (true){
//중지버튼클릭시 중지
if(isThread == false)
break;
if(checkNetworkstate() == true){
loadHandler.sendEmptyMessageDelayed(0, 200);
break;
}
Log.i("#####", "OFF2");
Thread.sleep(3000);
movieIntent("http://m.naver.com");
Thread.sleep(3000);
movieIntent("http://m.daum.net");
Thread.sleep(3000);
}
}
//중지버튼클릭시 중지
if(isThread == false)
break;
Log.i("ON/OFF CNT", String.valueOf(cnt));
cnt++;
int bi_time = GlobalVar2.getInstance().get_bi_time();
isThread = GlobalVar2.getInstance().get_bb_Thread();
Thread.sleep(bi_time);
Log.i("Time", String.valueOf(bi_time));
}
}catch (InterruptedException e){
e.printStackTrace();
}
}
}
}