add separate table for users
This commit is contained in:
parent
996ece8ee5
commit
af37f7b307
8 changed files with 126 additions and 42 deletions
|
|
@ -15,6 +15,7 @@ import com.dkanada.gramophone.R;
|
|||
import com.dkanada.gramophone.databinding.ActivityLoginBinding;
|
||||
import com.dkanada.gramophone.activities.base.AbsBaseActivity;
|
||||
import com.dkanada.gramophone.model.Server;
|
||||
import com.dkanada.gramophone.model.User;
|
||||
import com.dkanada.gramophone.util.PreferenceUtil;
|
||||
import com.kabouzeid.appthemehelper.ThemeStore;
|
||||
|
||||
|
|
@ -118,14 +119,18 @@ public class LoginActivity extends AbsBaseActivity implements View.OnClickListen
|
|||
});
|
||||
}
|
||||
|
||||
private void check(String url, String user, String token) {
|
||||
private void check(String url, String name, String token) {
|
||||
App.getApiClient().GetSystemInfoAsync(new Response<SystemInfo>() {
|
||||
@Override
|
||||
public void onResponse(SystemInfo result) {
|
||||
if (result.getVersion().charAt(0) == '1') {
|
||||
Server server = new Server(result.getServerName(), url, user, token);
|
||||
PreferenceUtil.getInstance(LoginActivity.this).setServer(server.id);
|
||||
Server server = new Server(result.getServerName(), url);
|
||||
User user = new User(server.id, name, token);
|
||||
|
||||
App.getDatabase().serverDao().insertServer(server);
|
||||
App.getDatabase().userDao().insertUser(user);
|
||||
PreferenceUtil.getInstance(LoginActivity.this).setServer(server.id);
|
||||
PreferenceUtil.getInstance(LoginActivity.this).setUser(user.id);
|
||||
|
||||
Intent intent = new Intent(LoginActivity.this, SplashActivity.class);
|
||||
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ import com.dkanada.gramophone.App;
|
|||
import com.dkanada.gramophone.R;
|
||||
import com.dkanada.gramophone.activities.base.AbsBaseActivity;
|
||||
import com.dkanada.gramophone.model.Server;
|
||||
import com.dkanada.gramophone.model.User;
|
||||
import com.dkanada.gramophone.util.NavigationUtil;
|
||||
import com.dkanada.gramophone.util.PreferenceUtil;
|
||||
|
||||
|
|
@ -78,32 +79,34 @@ public class SplashActivity extends AbsBaseActivity {
|
|||
}
|
||||
|
||||
public void login() {
|
||||
if (PreferenceUtil.getInstance(this).getServer().isEmpty()) {
|
||||
Context context = this;
|
||||
Server server = App.getDatabase().serverDao().getServer(PreferenceUtil.getInstance(this).getServer());
|
||||
User user = App.getDatabase().userDao().getUser(PreferenceUtil.getInstance(this).getUser());
|
||||
|
||||
if (server == null || user == null) {
|
||||
NavigationUtil.goToLogin(this);
|
||||
} else {
|
||||
final Context context = this;
|
||||
Server server = App.getDatabase().serverDao().getServer(PreferenceUtil.getInstance(this).getServer());
|
||||
|
||||
App.getApiClient().ChangeServerLocation(server.url);
|
||||
App.getApiClient().SetAuthenticationInfo(server.token, server.user);
|
||||
App.getApiClient().GetSystemInfoAsync(new Response<SystemInfo>() {
|
||||
@Override
|
||||
public void onResponse(SystemInfo result) {
|
||||
ClientCapabilities clientCapabilities = new ClientCapabilities();
|
||||
clientCapabilities.setSupportsMediaControl(true);
|
||||
clientCapabilities.setSupportsPersistentIdentifier(true);
|
||||
|
||||
App.getApiClient().ensureWebSocket();
|
||||
App.getApiClient().ReportCapabilities(clientCapabilities, new EmptyResponse());
|
||||
|
||||
NavigationUtil.goToMain(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(Exception exception) {
|
||||
NavigationUtil.goToLogin(context);
|
||||
}
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
App.getApiClient().ChangeServerLocation(server.url);
|
||||
App.getApiClient().SetAuthenticationInfo(user.token, user.name);
|
||||
App.getApiClient().GetSystemInfoAsync(new Response<SystemInfo>() {
|
||||
@Override
|
||||
public void onResponse(SystemInfo result) {
|
||||
ClientCapabilities clientCapabilities = new ClientCapabilities();
|
||||
clientCapabilities.setSupportsMediaControl(true);
|
||||
clientCapabilities.setSupportsPersistentIdentifier(true);
|
||||
|
||||
App.getApiClient().ensureWebSocket();
|
||||
App.getApiClient().ReportCapabilities(clientCapabilities, new EmptyResponse());
|
||||
|
||||
NavigationUtil.goToMain(context);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onError(Exception exception) {
|
||||
NavigationUtil.goToLogin(context);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue