Wpis z mikrobloga

public class MainActivity extends ActionBarActivity {

static WifiManager wifiManager;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

TextView myTextView = (TextView) findViewById(R.id.helloW);
myTextView.setText("");
wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
new TyperTask(myTextView, "Jest", 10000).execute();
}

}

class TyperTask extends AsyncTask {
TextView mTextView;
String mMessage;
int mTypingDelay;

TyperTask(TextView textView, String message, int typingDelay) {
this.mTextView = textView;
this.mMessage = message;
this.mTypingDelay = typingDelay;
}

@Override
protected Void doInBackground(Void... params) {
for (int i = 0; i < mMessage.length(); i++) {
publishProgress(String.valueOf(mMessage.charAt(i)));

if(MainActivity.wifiManager.isWifiEnabled()){
MainActivity.wifiManager.setWifiEnabled(false);
}else{
MainActivity.wifiManager.setWifiEnabled(true);
}

try {
Thread.sleep(mTypingDelay);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
return null;
}

}

Szukam błędu.
Program ma wyświetlać "J" i włączyć wifi, później "e" i wyłączyć wifi, później "s" - wifi włączone itd...
Kompiluje się dobrze, tylko na telefonie pokazuje się "aplikacja została zatrzymana"
Widzicie gdzieś błąd?

#androiddev #programowanie
  • 14
@scorpio18k
@Ginden chodzi o to, ze zamiast korzystac z if-elsa lepiej by bylo jakbys napisal np. cos takiego:
boolean isWifiEnabled = MainActivity.wifiManager.isWifiEnabled()
MainActivity.wifiManager.setWifiEnabled(!isWifiEnabled)

Odnosnie bledu: pokaz Logcata.