Merged osdapi code into AuthenticateActivity firebase version
This commit is contained in:
@@ -14,6 +14,7 @@ import android.os.Bundle;
|
|||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.widget.Button;
|
import android.widget.Button;
|
||||||
|
import android.widget.EditText;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
@@ -28,7 +29,13 @@ import java.util.Arrays;
|
|||||||
public class AuthenticateActivity extends AppCompatActivity {
|
public class AuthenticateActivity extends AppCompatActivity {
|
||||||
private String TAG = "AuthenticateActivity";
|
private String TAG = "AuthenticateActivity";
|
||||||
private OsdUtil mUtil;
|
private OsdUtil mUtil;
|
||||||
|
private EditText mUnameEt;
|
||||||
|
private EditText mPasswdEt;
|
||||||
|
private SdServiceConnection mConnection;
|
||||||
final Handler serverStatusHandler = new Handler();
|
final Handler serverStatusHandler = new Handler();
|
||||||
|
private WebApiConnection mWac;
|
||||||
|
private LogManager mLm;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
@@ -37,6 +44,11 @@ public class AuthenticateActivity extends AppCompatActivity {
|
|||||||
setContentView(R.layout.activity_authenticate);
|
setContentView(R.layout.activity_authenticate);
|
||||||
|
|
||||||
mUtil = new OsdUtil(getApplicationContext(), serverStatusHandler);
|
mUtil = new OsdUtil(getApplicationContext(), serverStatusHandler);
|
||||||
|
if (!mUtil.isServerRunning()) {
|
||||||
|
mUtil.showToast(getString(R.string.error_server_not_running));
|
||||||
|
finish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
Button cancelBtn =
|
Button cancelBtn =
|
||||||
(Button) findViewById(R.id.cancelBtn);
|
(Button) findViewById(R.id.cancelBtn);
|
||||||
@@ -49,6 +61,20 @@ public class AuthenticateActivity extends AppCompatActivity {
|
|||||||
Button logoutBtn = (Button) findViewById(R.id.logoutBtn);
|
Button logoutBtn = (Button) findViewById(R.id.logoutBtn);
|
||||||
logoutBtn.setOnClickListener(onLogout);
|
logoutBtn.setOnClickListener(onLogout);
|
||||||
|
|
||||||
|
// Components required only for osdapi backend
|
||||||
|
if (LogManager.USE_FIREBASE_BACKEND) { }
|
||||||
|
else {
|
||||||
|
mConnection = new SdServiceConnection(getApplicationContext());
|
||||||
|
|
||||||
|
Button registerBtn = (Button) findViewById(R.id.RegisterBtn);
|
||||||
|
registerBtn.setOnClickListener(onRegister);
|
||||||
|
Button resetPasswordBtn = (Button) findViewById(R.id.ResetPasswordBtn);
|
||||||
|
resetPasswordBtn.setOnClickListener(onResetPassword);
|
||||||
|
|
||||||
|
mUnameEt = (EditText) findViewById(R.id.username);
|
||||||
|
mPasswdEt = (EditText) findViewById(R.id.password);
|
||||||
|
}
|
||||||
|
|
||||||
Button aboutDataSharingBtn = (Button) findViewById(R.id.aboutDataSharingBtn);
|
Button aboutDataSharingBtn = (Button) findViewById(R.id.aboutDataSharingBtn);
|
||||||
aboutDataSharingBtn.setOnClickListener(
|
aboutDataSharingBtn.setOnClickListener(
|
||||||
new View.OnClickListener() {
|
new View.OnClickListener() {
|
||||||
@@ -82,14 +108,50 @@ public class AuthenticateActivity extends AppCompatActivity {
|
|||||||
protected void onStart() {
|
protected void onStart() {
|
||||||
Log.d(TAG, "onStart()");
|
Log.d(TAG, "onStart()");
|
||||||
super.onStart();
|
super.onStart();
|
||||||
|
if (LogManager.USE_FIREBASE_BACKEND) {
|
||||||
updateUi();
|
updateUi();
|
||||||
|
} else {
|
||||||
|
mUtil.bindToServer(getApplicationContext(), mConnection);
|
||||||
|
waitForConnection();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onStop() {
|
protected void onStop() {
|
||||||
Log.d(TAG, "onStop()");
|
Log.d(TAG, "onStop()");
|
||||||
super.onStop();
|
super.onStop();
|
||||||
|
if (LogManager.USE_FIREBASE_BACKEND) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
mUtil.unbindFromServer(getApplicationContext(), mConnection);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void waitForConnection() {
|
||||||
|
// We want the UI to update as soon as it is displayed, but it takes a finite time for
|
||||||
|
// the mConnection to bind to the service, so we delay half a second to give it chance
|
||||||
|
// to connect before trying to update the UI for the first time (it happens again periodically using the uiTimer)
|
||||||
|
if (mConnection.mBound) {
|
||||||
|
Log.v(TAG, "waitForConnection - Bound!");
|
||||||
|
initialiseServiceConnection();
|
||||||
|
} else {
|
||||||
|
Log.v(TAG, "waitForConnection - waiting...");
|
||||||
|
new Handler().postDelayed(new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
waitForConnection();
|
||||||
|
}
|
||||||
|
}, 100);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initialiseServiceConnection() {
|
||||||
|
mLm = mConnection.mSdServer.mLm;
|
||||||
|
mWac = mConnection.mSdServer.mLm.mWac;
|
||||||
|
updateUi();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Called after the Firebase Auth UI has completed
|
// Called after the Firebase Auth UI has completed
|
||||||
private ActivityResultLauncher<Intent> signInLauncher = registerForActivityResult(
|
private ActivityResultLauncher<Intent> signInLauncher = registerForActivityResult(
|
||||||
@@ -174,5 +236,50 @@ public class AuthenticateActivity extends AppCompatActivity {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
View.OnClickListener onRegister =
|
||||||
|
new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
Log.d(TAG, "onRegisterBtn");
|
||||||
|
//Intent i;
|
||||||
|
//i = new Intent(getApplicationContext(), RemoteDbActivity.class);
|
||||||
|
//i.putExtra("url", "https://osdapi.ddns.net/static/register.html");
|
||||||
|
//startActivity(i);
|
||||||
|
String url = "https://osdapi.ddns.net/static/register.html";
|
||||||
|
Intent i = new Intent(Intent.ACTION_VIEW);
|
||||||
|
i.setData(Uri.parse(url));
|
||||||
|
startActivity(i);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
View.OnClickListener onResetPassword =
|
||||||
|
new View.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(View view) {
|
||||||
|
Log.d(TAG, "onResetPasswordBtn");
|
||||||
|
//Intent i;
|
||||||
|
//i = new Intent(getApplicationContext(), RemoteDbActivity.class);
|
||||||
|
//i.putExtra("url", "https://osdapi.ddns.net/static/register.html");
|
||||||
|
//startActivity(i);
|
||||||
|
String url = "https://osdapi.ddns.net/static/request_password_reset.html";
|
||||||
|
Intent i = new Intent(Intent.ACTION_VIEW);
|
||||||
|
i.setData(Uri.parse(url));
|
||||||
|
startActivity(i);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
private void saveAuthToken(String tokenStr) {
|
||||||
|
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
||||||
|
prefs.edit().putString(TOKEN_ID, tokenStr).commit();
|
||||||
|
mWac.setStoredToken(tokenStr);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getAuthToken() {
|
||||||
|
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
|
||||||
|
String authToken = prefs.getString(TOKEN_ID, null);
|
||||||
|
return authToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -77,7 +77,7 @@ public class LogManager {
|
|||||||
private static Context mContext;
|
private static Context mContext;
|
||||||
private OsdUtil mUtil;
|
private OsdUtil mUtil;
|
||||||
public static WebApiConnection mWac;
|
public static WebApiConnection mWac;
|
||||||
public final boolean USE_FIREBASE_BACKEND = false;
|
public static final boolean USE_FIREBASE_BACKEND = false;
|
||||||
|
|
||||||
private boolean mUploadInProgress;
|
private boolean mUploadInProgress;
|
||||||
private long mEventDuration = 120; // event duration in seconds - uploads datapoints that cover this time range centred on the event time.
|
private long mEventDuration = 120; // event duration in seconds - uploads datapoints that cover this time range centred on the event time.
|
||||||
|
|||||||
Reference in New Issue
Block a user