Für eine Familie, soll ich eine App für die Kinder programmieren. Die Kinder bekommen 2 Stunden Internet täglich und sie können dies selber einteilen. Deswegen habe ich an ein Countdown gedacht. In der App sind zwei Variablen(Netzwerkname und Passwort) gespeichert. Wenn man auf Start drückt, dann würd überprüft, ob i > 1, dann wird das Netzwerk gesucht und sich mit dem Passwort eingeloggt. Drückt man auf Stop, dann wird das Netzwerk getrennt. Darum habe ich ein Video angeschaut, mit Countdown, wo es im Video funktioniert hatte und habe es genauso gemacht, leider funktioniert es nicht. Im Internet steht nicht drinnen, wie ich mit einem Wlan über eine App einloggen und trennen kann. Es wäre schönn, wenn ich Hilfe dafür bekommen, da die Familie keinen Programmierer leisten kann und die Kinder sollen lernen mit dem Internet umzugehen. Und der Countdown muss jeden Tag automatisch wieder auf 2 Stunden gesetzt werden. Ich werde das bestimmt den rest der Zeit als ShaPer speichern.
Ich programmiere auf Android Studio und habe ein Win10
Ich programmiere auf Android Studio und habe ein Win10
Code:
package com.example.internet;
import androidx.appcompat.app.AppCompatActivity;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class internet extends AppCompatActivity {
private TextView countdownText;
private Button countdownButton;
private CountDownTimer countDownTimer;
private long timeLeftInMilliseconds = 7200000; //2 Stunden
private boolean timerRunning;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_internet);
this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
countdownText = findViewById(R.id.countdowntext);
countdownButton = findViewById(R.id.button3);
countdownButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
startStop();
}
});
updateTimer();
}
public void startStop(){
if (timerRunning){
stopTimer();
}else{
startTimer();
}
}
public void startTimer(){
countDownTimer = new CountDownTimer(timeLeftInMilliseconds, 1000) {
@Override
public void onTick(long l) {
timeLeftInMilliseconds = 1;
updateTimer();
}
@Override
public void onFinish() {
}
}.start();
countdownButton.setText("Pause");
timerRunning = true;
}
public void stopTimer(){
countDownTimer.cancel();
countdownButton.setText("Start");
timerRunning = false;
}
public void updateTimer(){
int hours = (int) timeLeftInMilliseconds / 3600000;
int minutes = (int) timeLeftInMilliseconds | 3600000 / 60000;
int seconds = (int) timeLeftInMilliseconds | 60000 / 1000;
String timeLeftText;
timeLeftText = "" + hours;
timeLeftText += ":";
timeLeftText += "" + minutes;
timeLeftText += ":";
timeLeftText += "" + seconds;
if(seconds < 10) timeLeftText += "0";
timeLeftText += seconds;
countdownText.setText(timeLeftText);
}
}