I am calling the android API in the same way as for other versions of phone and its working fine till Oreo version i.e. 8. But the API is not getting called in android 9 i.e. pie version and above. If there are some changes in pie, do let me know. Thanks in advance.
private void getLoginAPI(String username, String password, String compnaycoce) {
if (NetworkStatus.isNetworkConnected(this)) {
LoginReqBean bean = new LoginReqBean();
bean.UserId = username;
bean.Password = password;
bean.Company = compnaycoce;
NetworkService serviceCall = new NetworkService(Constants.loginPost(), Constants.TAG_POST, this);
serviceCall.call(bean);
} else
Toast.makeText(this, "Please check Internet connection", Toast.LENGTH_SHORT).show();
}
@Override
public void onNetworkCallInitiated(String service) {
progressDialog = ProgressDialog.show(LoginActivity.this, "Info", "Validating Credentials, Please wait...");
progressDialog.show();
}
@Override
public void onNetworkCallCompleted(String service, String response) {
Log.e("LOGIN JSON ", "login " + response);
if (progressDialog != null && progressDialog.isShowing())
progressDialog.dismiss();
LoginParentBean parentBean = LoginParentBean.fromJson(response);
if (parentBean != null && parentBean.status) {
LoginBean loginBean = parentBean.result;
Toast.makeText(getApplicationContext(), "You Are logged in Successfully!", Toast.LENGTH_LONG).show();
AppPreferences.INSTANCE.setUserID(loginBean.user_id);
AppPreferences.INSTANCE.setUserRole(loginBean.userRole);
AppPreferences.INSTANCE.setUserLocation(loginBean.location);
AppPreferences.INSTANCE.setUserLocationID(loginBean.locationId);
AppPreferences.INSTANCE.setIsPostGres(loginBean.isPostgres);
AppPreferences.INSTANCE.setUserName(loginBean.username);
AppPreferences.INSTANCE.setAccessToken(loginBean.tokenValue);
AppPreferences.INSTANCE.setLogin(true);
Intent intent = new Intent(getApplicationContext(), DashBoardActivity.class);
startActivity(intent);
finish();
} else
Toast.makeText(getApplicationContext(), "Please check your username and password again!", Toast.LENGTH_LONG).show();
}
@Override
public void onNetworkCallError(String service, String errorMessage) {
if (progressDialog != null && progressDialog.isShowing())
progressDialog.dismiss();
MessageDialog msg = new MessageDialog(LoginActivity.this);
msg.setButtonText("Ok");
msg.show(getResources().getString(R.string.error_somethingwent), getResources().getString(R.string.app_name));
}
}