Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 07-14 18:48:20.826 1263-1263/? E/dex2oat: Failed to create oat file: /data/dalvik-cache/x86/data@app@apkcrew.teststationary-2@split_lib_slice_5_apk.apk@classes.dex: Permission denied
- 07-14 18:48:20.838 1268-1268/? E/dex2oat: Failed to create oat file: /data/dalvik-cache/x86/data@app@apkcrew.teststationary-2@split_lib_slice_6_apk.apk@classes.dex: Permission denied
- 07-14 18:48:20.852 1274-1274/? E/dex2oat: Failed to create oat file: /data/dalvik-cache/x86/data@app@apkcrew.teststationary-2@split_lib_slice_7_apk.apk@classes.dex: Permission denied
- 07-14 18:48:20.863 1276-1276/? E/dex2oat: Failed to create oat file: /data/dalvik-cache/x86/data@app@apkcrew.teststationary-2@split_lib_slice_8_apk.apk@classes.dex: Permission denied
- 07-14 18:48:20.875 1278-1278/? E/dex2oat: Failed to create oat file: /data/dalvik-cache/x86/data@app@apkcrew.teststationary-2@split_lib_slice_9_apk.apk@classes.dex: Permission denied
- 07-14 18:48:21.351 1244-2022/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
- 07-14 18:48:21.870 2419-3359/com.google.android.gms E/Volley: [273] BasicNetwork.performRequest: Unexpected response code 400 for https://securetoken.googleapis.com/v1/token?alt=proto&key=AIzaSyBS7JVQhN1wDrz4mmSfOy6rCwnlgTwZMBg
- 07-14 18:48:22.995 2419-3356/com.google.android.gms E/Volley: [270] BasicNetwork.performRequest: Unexpected response code 400 for https://securetoken.googleapis.com/v1/token?alt=proto&key=AIzaSyBS7JVQhN1wDrz4mmSfOy6rCwnlgTwZMBg
- 07-14 18:48:24.446 2419-3358/com.google.android.gms E/Volley: [272] BasicNetwork.performRequest: Unexpected response code 400 for https://securetoken.googleapis.com/v1/token?alt=proto&key=AIzaSyBS7JVQhN1wDrz4mmSfOy6rCwnlgTwZMBg
- package apkcrew.teststationary;
- import android.app.ProgressDialog;
- import android.content.Intent;
- import android.os.Bundle;
- import android.support.annotation.NonNull;
- import android.support.annotation.Nullable;
- import android.support.v7.app.AppCompatActivity;
- import android.text.TextUtils;
- import android.view.View;
- import android.widget.ArrayAdapter;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.Spinner;
- import android.widget.Toast;
- import android.util.Log;
- import com.google.android.gms.tasks.OnCompleteListener;
- import com.google.android.gms.tasks.Task;
- import com.google.firebase.auth.AuthResult;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.auth.FirebaseUser;
- import com.google.firebase.database.DataSnapshot;
- import com.google.firebase.database.DatabaseError;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.google.firebase.database.ValueEventListener;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- import android.util.Log;
- public class RegisterActivity extends AppCompatActivity{
- private EditText username;
- private EditText email;
- private EditText password;
- private Spinner deptspinner;
- private Spinner desigspinner;
- private Button regbtn;
- private ProgressDialog progressDialog;
- private ProgressDialog loadingDialog;
- private FirebaseAuth mAuth;
- // private FirebaseAuth.AuthStateListener mAuthListener;
- private DatabaseReference firebaseDatabase,deptref,desigref;
- private static final String TAG = "registrationlog";
- @Override
- protected void onCreate(@Nullable Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_register);
- Log.i(TAG,"OnCreate");
- username = (EditText)findViewById(R.id.user);
- password = (EditText)findViewById(R.id.passw);
- email = (EditText)findViewById(R.id.email);
- deptspinner = (Spinner)findViewById(R.id.depspinner);
- desigspinner = (Spinner)findViewById(R.id.desigspinner);
- regbtn = (Button)findViewById(R.id.regbutton);
- progressDialog = new ProgressDialog(this);
- loadingDialog = new ProgressDialog(this);
- mAuth = FirebaseAuth.getInstance();
- firebaseDatabase = FirebaseDatabase.getInstance().getReference("Users");
- deptref = FirebaseDatabase.getInstance().getReference("Departments");
- desigref = FirebaseDatabase.getInstance().getReference("Designations");
- loadingDialog.setMessage("Loading...");
- loadingDialog.show();
- // set up department spinner
- Log.i(TAG,"Calling getDepartments");
- getDepartments();
- // Set up desig spinner
- Log.i(TAG,"Calling getDesignations");
- getDesignations();
- loadingDialog.dismiss();
- // register btn listener
- regbtn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Log.i(TAG,"Clicked Register");
- registerUser();
- }
- });
- }
- // fills list of departments from database
- private void getDepartments() {
- Log.i(TAG,"Inside getDepartments");
- final List<String> deptlist = new ArrayList<String>();
- deptref.addListenerForSingleValueEvent(new ValueEventListener() {
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- Log.i(TAG,"DatasnapShot children count(departments): "+dataSnapshot.getChildrenCount());
- for(DataSnapshot dsp: dataSnapshot.getChildren()){
- Log.i(TAG, dsp.getValue(String.class));
- deptlist.add(dsp.getValue(String.class));
- ArrayAdapter<String> deptadapter = new ArrayAdapter<String>(RegisterActivity.this,android.R.layout.simple_spinner_item,deptlist);
- deptadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
- deptspinner.setAdapter(deptadapter);
- }
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- Log.i(TAG,"DeptList size before returning: "+deptlist.size());
- }
- // fills list of designations from database
- private void getDesignations(){
- Log.i(TAG,"Inside getDesignations");
- final List<String> desiglist = new ArrayList<String>();
- desigref.addListenerForSingleValueEvent(new ValueEventListener() {
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- Log.i(TAG,"DatasnapShot children count(designations): "+dataSnapshot.getChildrenCount());
- for(DataSnapshot dsp: dataSnapshot.getChildren()){
- Log.i(TAG,dsp.getValue(String.class));
- desiglist.add(dsp.getValue(String.class));
- ArrayAdapter<String> desigadapter = new ArrayAdapter<String>(RegisterActivity.this,android.R.layout.simple_spinner_item,desiglist);
- desigadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
- desigspinner.setAdapter(desigadapter);
- }
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- Log.i(TAG,"DesigList Size: "+ desiglist.size());
- }
- private void registerUser(){
- Log.i(TAG,"Register User");
- String emailtext = email.getText().toString().trim();
- String passtext = password.getText().toString().trim();
- String[] namearray = new String[2];
- StringBuilder userNameBuilder = new StringBuilder();
- String usernametext = username.getText().toString().trim();
- String finalUserName;
- if(usernametext.contains(" "))
- {
- namearray = usernametext.split(" ");
- userNameBuilder.append(namearray[0]).append(namearray[1]);
- finalUserName = userNameBuilder.toString();
- }
- else{
- finalUserName = usernametext;
- }
- String deptselected = deptspinner.getSelectedItem().toString();
- String desigSelected = desigspinner.getSelectedItem().toString();
- if(TextUtils.isEmpty(emailtext))
- {
- Toast.makeText(this,"Please enter the email",Toast.LENGTH_LONG).show();
- return;
- }
- if(TextUtils.isEmpty(passtext))
- {
- Toast.makeText(this,"Please enter the password",Toast.LENGTH_LONG).show();
- return;
- }
- if(TextUtils.isEmpty(usernametext))
- {
- Toast.makeText(this,"Please enter the username",Toast.LENGTH_LONG).show();
- return;
- }
- if(TextUtils.isEmpty(deptselected))
- {
- Toast.makeText(this,"Please select the department",Toast.LENGTH_LONG).show();
- return;
- }
- if(TextUtils.isEmpty(emailtext))
- {
- Toast.makeText(this,"Please select the designation",Toast.LENGTH_LONG).show();
- return;
- }
- // validations are fine
- progressDialog.setMessage("Registering User...");
- progressDialog.show();
- mAuth.createUserWithEmailAndPassword(finalUserName+"_iocl@gmail.com",passtext)
- .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- progressDialog.dismiss();
- if(task.isSuccessful())
- {
- Log.i(TAG,"Registered Success");
- Toast.makeText(RegisterActivity.this,"User registered successfully",Toast.LENGTH_LONG).show();
- finish();
- startActivity(new Intent(RegisterActivity.this,LoginActivity.class));
- }
- else
- {
- Toast.makeText(RegisterActivity.this,"Failed to register. Please try again",Toast.LENGTH_LONG).show();
- }
- }
- });
- HashMap<String,String> userdetails = new HashMap<>();
- // userdetails.put("Name",usernametext);
- userdetails.put("Email",emailtext);
- userdetails.put("Password",passtext);
- userdetails.put("Department",deptselected);
- userdetails.put("Designation",desigSelected);
- String id = usernametext;
- firebaseDatabase.child(id).setValue(userdetails);
- }
- }
- package apkcrew.teststationary;
- import android.app.ProgressDialog;
- import android.content.Intent;
- import android.content.SharedPreferences;
- import android.graphics.drawable.TransitionDrawable;
- import android.os.Handler;
- import android.support.annotation.NonNull;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.text.TextUtils;
- import android.view.View;
- import android.widget.AutoCompleteTextView;
- import android.widget.Button;
- import android.widget.CheckBox;
- import android.widget.EditText;
- import android.widget.LinearLayout;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.google.android.gms.tasks.OnCompleteListener;
- import com.google.android.gms.tasks.Task;
- import com.google.firebase.auth.AuthResult;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.database.DataSnapshot;
- import com.google.firebase.database.DatabaseError;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.google.firebase.database.ValueEventListener;
- import android.util.Log;
- public class LoginActivity extends AppCompatActivity implements View.OnClickListener {
- private AutoCompleteTextView userid;
- private EditText password;
- private Button loginbtn;
- private TextView register;
- private CheckBox rememberme;
- private ProgressDialog progressDialog;
- private FirebaseAuth firebaseAuth;
- private DatabaseReference databaseReference;
- private LinearLayout loginlayout;
- private SharedPreferences loginPreferences;
- private SharedPreferences.Editor loginPrefsEditor;
- private boolean saveLogin, checkadmin;
- private static final String TAG = "mylog";
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- Log.i(TAG, "Inside Oncreate");
- userid = (AutoCompleteTextView) findViewById(R.id.userid);
- password = (EditText) findViewById(R.id.pw);
- rememberme = (CheckBox) findViewById(R.id.checkBox);
- loginbtn = (Button) findViewById(R.id.loginbtn);
- progressDialog = new ProgressDialog(this);
- firebaseAuth = FirebaseAuth.getInstance();
- databaseReference = FirebaseDatabase.getInstance().getReference("admin");
- checkadmin = false;
- Log.i(TAG, "checkadmin: " + checkadmin);
- if (firebaseAuth.getCurrentUser() != null) {
- // user already logged in
- // start detail activity
- // startActivity(new Intent(LoginActivity.this,DetailActivity.class));
- }
- loginbtn.setOnClickListener(this);
- loginPreferences = getSharedPreferences("loginPrefs", MODE_PRIVATE);
- loginPrefsEditor = loginPreferences.edit();
- saveLogin = loginPreferences.getBoolean("saveLogin", false);
- if (saveLogin) {
- userid.setText(loginPreferences.getString("username", ""));
- password.setText(loginPreferences.getString("password", ""));
- rememberme.setChecked(true);
- }
- register = (TextView) findViewById(R.id.newId);
- register.setOnClickListener(this);
- // updateBackground();
- }
- private void loginUser() {
- Log.i(TAG, "Inside LoginUser");
- // user login
- String UsernameText;
- if (!userid.getText().toString().trim().contains(" "))
- UsernameText = userid.getText().toString().trim() + "_iocl@gmail.com";
- else {
- StringBuilder UsernameBuilder = new StringBuilder();
- String[] namearray = userid.getText().toString().trim().split(" ");
- UsernameBuilder.append(namearray[0]).append(namearray[1]).append("_iocl@gmail.com");
- UsernameText = UsernameBuilder.toString();
- }
- String passText = password.getText().toString().trim();
- if (TextUtils.isEmpty(UsernameText)) {
- Toast.makeText(this, "Please enter the Username", Toast.LENGTH_LONG);
- return;
- }
- if (TextUtils.isEmpty(passText)) {
- Toast.makeText(this, "Please enter the password", Toast.LENGTH_LONG);
- return;
- }
- progressDialog.setMessage("Logging in..");
- progressDialog.show();
- firebaseAuth.signInWithEmailAndPassword(UsernameText, passText)
- .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- progressDialog.dismiss();
- if (task.isSuccessful()) {
- // start detail activity
- finish();
- Intent intent = new Intent(LoginActivity.this, DetailActivity.class);
- intent.putExtra(DetailActivity.EXTRA_NAME, userid.getText().toString().trim());
- startActivity(intent);
- }
- else{
- Toast.makeText(LoginActivity.this,"Invalid Username or Password",Toast.LENGTH_LONG).show();
- }
- }
- });
- }
- private void loginadmin(final String adminName, final String adminPass) {
- Log.i(TAG, "Inside LoginAdmin");
- progressDialog.setMessage("Logging in as Admin..");
- progressDialog.show();
- String finalAdminName;
- if (!adminName.contains(" "))
- finalAdminName = adminName + "_iocl@gmail.com";
- else {
- StringBuilder UsernameBuilder = new StringBuilder();
- String[] namearray = adminName.trim().split(" ");
- UsernameBuilder.append(namearray[0]).append(namearray[1]).append("_iocl@gmail.com");
- finalAdminName = UsernameBuilder.toString();
- }
- firebaseAuth.signInWithEmailAndPassword(finalAdminName, adminPass)
- .addOnCompleteListener(new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- progressDialog.dismiss();
- if (task.isSuccessful()) {
- // admin profile login
- Intent intent = new Intent(LoginActivity.this, AdminActivity.class);
- intent.putExtra(AdminActivity.EXTRA_NAME, adminName);
- intent.putExtra(AdminActivity.EXTRA_PASSWORD, adminPass);
- startActivity(intent);
- }
- else{
- Toast.makeText(LoginActivity.this,"Admin Login Failed. Check Password.",Toast.LENGTH_LONG).show();
- }
- }
- });
- }
- @Override
- public void onClick(View v) {
- if (v == loginbtn) {
- Log.i(TAG, "Clicked Login..");
- if (rememberme.isChecked()) {
- loginPrefsEditor.putBoolean("saveLogin", true);
- loginPrefsEditor.putString("username", userid.getText().toString());
- loginPrefsEditor.putString("password", password.getText().toString());
- loginPrefsEditor.apply();
- } else {
- loginPrefsEditor.clear();
- loginPrefsEditor.commit();
- }
- Log.i(TAG, "Checking whether admin or User: ");
- checkAdminOrUser();
- } else if (v == register) {
- startActivity(new Intent(LoginActivity.this, RegisterActivity.class));
- }
- }
- private void checkAdminOrUser() {
- // checking admin
- databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
- @Override
- public void onDataChange(DataSnapshot dataSnapshot) {
- String adminName = String.valueOf(dataSnapshot.child("Name").getValue());
- String adminPass = String.valueOf(dataSnapshot.child("Password").getValue());
- if (adminName != null && adminPass != null &&
- adminName.equals(String.valueOf(userid.getText())) &&
- adminPass.equals(String.valueOf(password.getText()))) {
- Log.i(TAG, "admin pass and admin name match");
- checkadmin = true;
- loginadmin(adminName, adminPass);
- } else {
- Log.i(TAG, "Normal User Login");
- checkadmin = false;
- loginUser();
- }
- }
- @Override
- public void onCancelled(DatabaseError databaseError) {
- }
- });
- }
- // public void updateBackground() {
- // final Handler handler = new Handler();
- // handler.post(new Runnable() {
- // @Override
- // public void run() {
- // loginlayout = (LinearLayout) findViewById(R.id.login_layout);
- // TransitionDrawable trans = (TransitionDrawable) loginlayout.getBackground();
- // trans.startTransition(10000);
- //
- // handler.postDelayed(this, 10000);
- // }
- // });
- // }
- }
- apply plugin: 'com.android.application'
- android {
- compileSdkVersion 25
- buildToolsVersion "25.0.2"
- defaultConfig {
- applicationId "apkcrew.teststationary"
- minSdkVersion 17
- targetSdkVersion 25
- versionCode 1
- versionName "1.0"
- testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
- }
- buildTypes {
- release {
- minifyEnabled false
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
- }
- }
- }
- dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
- androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
- exclude group: 'com.android.support', module: 'support-annotations'
- })
- compile 'com.android.support:appcompat-v7:25.3.1'
- compile 'com.android.support.constraint:constraint-layout:1.0.2'
- compile 'com.google.firebase:firebase-auth:11.0.2'
- compile 'com.google.firebase:firebase-database:11.0.2'
- compile 'com.android.support:design:25.3.1'
- compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
- compile 'com.itextpdf:itextg:5.5.9'
- testCompile 'junit:junit:4.12'
- }
- apply plugin: 'com.google.gms.google-services'
- <?xml version="1.0" encoding="utf-8"?>
- <manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="apkcrew.teststationary">
- <uses-permission android:name="android.permission.INTERNET" />
- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
- <application
- android:allowBackup="true"
- android:icon="@mipmap/ic_launcher"
- android:label="@string/app_name"
- android:roundIcon="@mipmap/ic_launcher_round"
- android:supportsRtl="true"
- android:theme="@style/AppTheme">
- <activity android:name=".LoginActivity">
- <intent-filter>
- <action android:name="android.intent.action.MAIN" />
- <category android:name="android.intent.category.LAUNCHER" />
- </intent-filter>
- </activity>
- <activity android:name=".RegisterActivity" />
- <activity android:name=".DetailActivity" />
- <activity android:name=".ViewRequest" />
- <activity android:name=".EmployeeInfo" />
- <activity android:name=".NewItemRequest" />
- <activity android:name=".FirstScreen" />
- <activity android:name=".AdminActivity" />
- <activity android:name=".ApproveRequests" />
- <activity android:name=".ApprovalConfirm" />
- <activity android:name=".AdminDetails"></activity>
- </application>
- </manifest>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement