Advertisement
Guest User

Untitled

a guest
Jul 14th, 2017
564
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.03 KB | None | 0 0
  1. 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
  2. 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
  3. 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
  4. 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
  5. 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
  6. 07-14 18:48:21.351 1244-2022/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
  7. 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
  8. 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
  9. 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
  10.  
  11. package apkcrew.teststationary;
  12.  
  13. import android.app.ProgressDialog;
  14. import android.content.Intent;
  15. import android.os.Bundle;
  16. import android.support.annotation.NonNull;
  17. import android.support.annotation.Nullable;
  18. import android.support.v7.app.AppCompatActivity;
  19. import android.text.TextUtils;
  20. import android.view.View;
  21. import android.widget.ArrayAdapter;
  22. import android.widget.Button;
  23. import android.widget.EditText;
  24. import android.widget.Spinner;
  25. import android.widget.Toast;
  26. import android.util.Log;
  27.  
  28. import com.google.android.gms.tasks.OnCompleteListener;
  29. import com.google.android.gms.tasks.Task;
  30. import com.google.firebase.auth.AuthResult;
  31. import com.google.firebase.auth.FirebaseAuth;
  32. import com.google.firebase.auth.FirebaseUser;
  33. import com.google.firebase.database.DataSnapshot;
  34. import com.google.firebase.database.DatabaseError;
  35. import com.google.firebase.database.DatabaseReference;
  36. import com.google.firebase.database.FirebaseDatabase;
  37. import com.google.firebase.database.ValueEventListener;
  38.  
  39. import java.util.ArrayList;
  40. import java.util.HashMap;
  41. import java.util.List;
  42. import java.util.Map;
  43. import android.util.Log;
  44.  
  45. public class RegisterActivity extends AppCompatActivity{
  46.  
  47. private EditText username;
  48. private EditText email;
  49. private EditText password;
  50. private Spinner deptspinner;
  51. private Spinner desigspinner;
  52. private Button regbtn;
  53. private ProgressDialog progressDialog;
  54. private ProgressDialog loadingDialog;
  55. private FirebaseAuth mAuth;
  56. // private FirebaseAuth.AuthStateListener mAuthListener;
  57. private DatabaseReference firebaseDatabase,deptref,desigref;
  58. private static final String TAG = "registrationlog";
  59. @Override
  60. protected void onCreate(@Nullable Bundle savedInstanceState) {
  61. super.onCreate(savedInstanceState);
  62. setContentView(R.layout.activity_register);
  63.  
  64. Log.i(TAG,"OnCreate");
  65.  
  66. username = (EditText)findViewById(R.id.user);
  67. password = (EditText)findViewById(R.id.passw);
  68. email = (EditText)findViewById(R.id.email);
  69. deptspinner = (Spinner)findViewById(R.id.depspinner);
  70. desigspinner = (Spinner)findViewById(R.id.desigspinner);
  71. regbtn = (Button)findViewById(R.id.regbutton);
  72. progressDialog = new ProgressDialog(this);
  73. loadingDialog = new ProgressDialog(this);
  74.  
  75. mAuth = FirebaseAuth.getInstance();
  76. firebaseDatabase = FirebaseDatabase.getInstance().getReference("Users");
  77.  
  78. deptref = FirebaseDatabase.getInstance().getReference("Departments");
  79. desigref = FirebaseDatabase.getInstance().getReference("Designations");
  80.  
  81. loadingDialog.setMessage("Loading...");
  82. loadingDialog.show();
  83. // set up department spinner
  84. Log.i(TAG,"Calling getDepartments");
  85. getDepartments();
  86.  
  87. // Set up desig spinner
  88. Log.i(TAG,"Calling getDesignations");
  89. getDesignations();
  90.  
  91. loadingDialog.dismiss();
  92. // register btn listener
  93. regbtn.setOnClickListener(new View.OnClickListener() {
  94. @Override
  95. public void onClick(View v) {
  96. Log.i(TAG,"Clicked Register");
  97. registerUser();
  98. }
  99. });
  100. }
  101.  
  102. // fills list of departments from database
  103. private void getDepartments() {
  104. Log.i(TAG,"Inside getDepartments");
  105. final List<String> deptlist = new ArrayList<String>();
  106.  
  107. deptref.addListenerForSingleValueEvent(new ValueEventListener() {
  108. @Override
  109. public void onDataChange(DataSnapshot dataSnapshot) {
  110. Log.i(TAG,"DatasnapShot children count(departments): "+dataSnapshot.getChildrenCount());
  111. for(DataSnapshot dsp: dataSnapshot.getChildren()){
  112. Log.i(TAG, dsp.getValue(String.class));
  113. deptlist.add(dsp.getValue(String.class));
  114. ArrayAdapter<String> deptadapter = new ArrayAdapter<String>(RegisterActivity.this,android.R.layout.simple_spinner_item,deptlist);
  115. deptadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  116.  
  117. deptspinner.setAdapter(deptadapter);
  118. }
  119. }
  120.  
  121. @Override
  122. public void onCancelled(DatabaseError databaseError) {
  123.  
  124. }
  125. });
  126. Log.i(TAG,"DeptList size before returning: "+deptlist.size());
  127. }
  128.  
  129. // fills list of designations from database
  130. private void getDesignations(){
  131. Log.i(TAG,"Inside getDesignations");
  132. final List<String> desiglist = new ArrayList<String>();
  133.  
  134. desigref.addListenerForSingleValueEvent(new ValueEventListener() {
  135. @Override
  136. public void onDataChange(DataSnapshot dataSnapshot) {
  137. Log.i(TAG,"DatasnapShot children count(designations): "+dataSnapshot.getChildrenCount());
  138. for(DataSnapshot dsp: dataSnapshot.getChildren()){
  139. Log.i(TAG,dsp.getValue(String.class));
  140. desiglist.add(dsp.getValue(String.class));
  141. ArrayAdapter<String> desigadapter = new ArrayAdapter<String>(RegisterActivity.this,android.R.layout.simple_spinner_item,desiglist);
  142. desigadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  143.  
  144. desigspinner.setAdapter(desigadapter);
  145. }
  146. }
  147.  
  148. @Override
  149. public void onCancelled(DatabaseError databaseError) {
  150.  
  151. }
  152. });
  153. Log.i(TAG,"DesigList Size: "+ desiglist.size());
  154. }
  155.  
  156. private void registerUser(){
  157. Log.i(TAG,"Register User");
  158. String emailtext = email.getText().toString().trim();
  159. String passtext = password.getText().toString().trim();
  160.  
  161. String[] namearray = new String[2];
  162. StringBuilder userNameBuilder = new StringBuilder();
  163.  
  164. String usernametext = username.getText().toString().trim();
  165. String finalUserName;
  166. if(usernametext.contains(" "))
  167. {
  168. namearray = usernametext.split(" ");
  169. userNameBuilder.append(namearray[0]).append(namearray[1]);
  170. finalUserName = userNameBuilder.toString();
  171. }
  172. else{
  173. finalUserName = usernametext;
  174. }
  175.  
  176.  
  177. String deptselected = deptspinner.getSelectedItem().toString();
  178. String desigSelected = desigspinner.getSelectedItem().toString();
  179.  
  180. if(TextUtils.isEmpty(emailtext))
  181. {
  182. Toast.makeText(this,"Please enter the email",Toast.LENGTH_LONG).show();
  183. return;
  184. }
  185. if(TextUtils.isEmpty(passtext))
  186. {
  187. Toast.makeText(this,"Please enter the password",Toast.LENGTH_LONG).show();
  188. return;
  189. }
  190.  
  191. if(TextUtils.isEmpty(usernametext))
  192. {
  193. Toast.makeText(this,"Please enter the username",Toast.LENGTH_LONG).show();
  194. return;
  195. }
  196.  
  197. if(TextUtils.isEmpty(deptselected))
  198. {
  199. Toast.makeText(this,"Please select the department",Toast.LENGTH_LONG).show();
  200. return;
  201. }
  202. if(TextUtils.isEmpty(emailtext))
  203. {
  204. Toast.makeText(this,"Please select the designation",Toast.LENGTH_LONG).show();
  205. return;
  206. }
  207.  
  208. // validations are fine
  209. progressDialog.setMessage("Registering User...");
  210. progressDialog.show();
  211.  
  212. mAuth.createUserWithEmailAndPassword(finalUserName+"_iocl@gmail.com",passtext)
  213. .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
  214. @Override
  215. public void onComplete(@NonNull Task<AuthResult> task) {
  216. progressDialog.dismiss();
  217. if(task.isSuccessful())
  218. {
  219. Log.i(TAG,"Registered Success");
  220. Toast.makeText(RegisterActivity.this,"User registered successfully",Toast.LENGTH_LONG).show();
  221. finish();
  222. startActivity(new Intent(RegisterActivity.this,LoginActivity.class));
  223. }
  224. else
  225. {
  226. Toast.makeText(RegisterActivity.this,"Failed to register. Please try again",Toast.LENGTH_LONG).show();
  227. }
  228. }
  229. });
  230.  
  231. HashMap<String,String> userdetails = new HashMap<>();
  232. // userdetails.put("Name",usernametext);
  233. userdetails.put("Email",emailtext);
  234. userdetails.put("Password",passtext);
  235. userdetails.put("Department",deptselected);
  236. userdetails.put("Designation",desigSelected);
  237.  
  238.  
  239. String id = usernametext;
  240. firebaseDatabase.child(id).setValue(userdetails);
  241. }
  242. }
  243.  
  244. package apkcrew.teststationary;
  245.  
  246. import android.app.ProgressDialog;
  247. import android.content.Intent;
  248. import android.content.SharedPreferences;
  249. import android.graphics.drawable.TransitionDrawable;
  250. import android.os.Handler;
  251. import android.support.annotation.NonNull;
  252. import android.support.v7.app.AppCompatActivity;
  253. import android.os.Bundle;
  254. import android.text.TextUtils;
  255. import android.view.View;
  256. import android.widget.AutoCompleteTextView;
  257. import android.widget.Button;
  258. import android.widget.CheckBox;
  259. import android.widget.EditText;
  260. import android.widget.LinearLayout;
  261. import android.widget.TextView;
  262. import android.widget.Toast;
  263.  
  264. import com.google.android.gms.tasks.OnCompleteListener;
  265. import com.google.android.gms.tasks.Task;
  266. import com.google.firebase.auth.AuthResult;
  267. import com.google.firebase.auth.FirebaseAuth;
  268. import com.google.firebase.database.DataSnapshot;
  269. import com.google.firebase.database.DatabaseError;
  270. import com.google.firebase.database.DatabaseReference;
  271. import com.google.firebase.database.FirebaseDatabase;
  272. import com.google.firebase.database.ValueEventListener;
  273.  
  274. import android.util.Log;
  275.  
  276. public class LoginActivity extends AppCompatActivity implements View.OnClickListener {
  277.  
  278. private AutoCompleteTextView userid;
  279. private EditText password;
  280. private Button loginbtn;
  281. private TextView register;
  282. private CheckBox rememberme;
  283. private ProgressDialog progressDialog;
  284. private FirebaseAuth firebaseAuth;
  285. private DatabaseReference databaseReference;
  286. private LinearLayout loginlayout;
  287. private SharedPreferences loginPreferences;
  288. private SharedPreferences.Editor loginPrefsEditor;
  289. private boolean saveLogin, checkadmin;
  290. private static final String TAG = "mylog";
  291.  
  292. @Override
  293. protected void onCreate(Bundle savedInstanceState) {
  294. super.onCreate(savedInstanceState);
  295. setContentView(R.layout.activity_login);
  296.  
  297. Log.i(TAG, "Inside Oncreate");
  298.  
  299. userid = (AutoCompleteTextView) findViewById(R.id.userid);
  300. password = (EditText) findViewById(R.id.pw);
  301. rememberme = (CheckBox) findViewById(R.id.checkBox);
  302. loginbtn = (Button) findViewById(R.id.loginbtn);
  303. progressDialog = new ProgressDialog(this);
  304. firebaseAuth = FirebaseAuth.getInstance();
  305. databaseReference = FirebaseDatabase.getInstance().getReference("admin");
  306. checkadmin = false;
  307.  
  308. Log.i(TAG, "checkadmin: " + checkadmin);
  309.  
  310. if (firebaseAuth.getCurrentUser() != null) {
  311. // user already logged in
  312. // start detail activity
  313. // startActivity(new Intent(LoginActivity.this,DetailActivity.class));
  314. }
  315. loginbtn.setOnClickListener(this);
  316.  
  317. loginPreferences = getSharedPreferences("loginPrefs", MODE_PRIVATE);
  318. loginPrefsEditor = loginPreferences.edit();
  319. saveLogin = loginPreferences.getBoolean("saveLogin", false);
  320.  
  321. if (saveLogin) {
  322. userid.setText(loginPreferences.getString("username", ""));
  323. password.setText(loginPreferences.getString("password", ""));
  324.  
  325. rememberme.setChecked(true);
  326. }
  327.  
  328.  
  329. register = (TextView) findViewById(R.id.newId);
  330. register.setOnClickListener(this);
  331.  
  332. // updateBackground();
  333. }
  334.  
  335. private void loginUser() {
  336. Log.i(TAG, "Inside LoginUser");
  337. // user login
  338.  
  339. String UsernameText;
  340. if (!userid.getText().toString().trim().contains(" "))
  341. UsernameText = userid.getText().toString().trim() + "_iocl@gmail.com";
  342. else {
  343. StringBuilder UsernameBuilder = new StringBuilder();
  344. String[] namearray = userid.getText().toString().trim().split(" ");
  345. UsernameBuilder.append(namearray[0]).append(namearray[1]).append("_iocl@gmail.com");
  346. UsernameText = UsernameBuilder.toString();
  347. }
  348.  
  349. String passText = password.getText().toString().trim();
  350.  
  351. if (TextUtils.isEmpty(UsernameText)) {
  352. Toast.makeText(this, "Please enter the Username", Toast.LENGTH_LONG);
  353. return;
  354. }
  355. if (TextUtils.isEmpty(passText)) {
  356. Toast.makeText(this, "Please enter the password", Toast.LENGTH_LONG);
  357. return;
  358. }
  359.  
  360. progressDialog.setMessage("Logging in..");
  361. progressDialog.show();
  362.  
  363. firebaseAuth.signInWithEmailAndPassword(UsernameText, passText)
  364. .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
  365. @Override
  366. public void onComplete(@NonNull Task<AuthResult> task) {
  367. progressDialog.dismiss();
  368.  
  369. if (task.isSuccessful()) {
  370. // start detail activity
  371. finish();
  372. Intent intent = new Intent(LoginActivity.this, DetailActivity.class);
  373. intent.putExtra(DetailActivity.EXTRA_NAME, userid.getText().toString().trim());
  374. startActivity(intent);
  375. }
  376. else{
  377. Toast.makeText(LoginActivity.this,"Invalid Username or Password",Toast.LENGTH_LONG).show();
  378. }
  379. }
  380. });
  381. }
  382.  
  383. private void loginadmin(final String adminName, final String adminPass) {
  384.  
  385. Log.i(TAG, "Inside LoginAdmin");
  386. progressDialog.setMessage("Logging in as Admin..");
  387. progressDialog.show();
  388.  
  389. String finalAdminName;
  390. if (!adminName.contains(" "))
  391. finalAdminName = adminName + "_iocl@gmail.com";
  392. else {
  393. StringBuilder UsernameBuilder = new StringBuilder();
  394. String[] namearray = adminName.trim().split(" ");
  395. UsernameBuilder.append(namearray[0]).append(namearray[1]).append("_iocl@gmail.com");
  396. finalAdminName = UsernameBuilder.toString();
  397. }
  398.  
  399. firebaseAuth.signInWithEmailAndPassword(finalAdminName, adminPass)
  400. .addOnCompleteListener(new OnCompleteListener<AuthResult>() {
  401. @Override
  402. public void onComplete(@NonNull Task<AuthResult> task) {
  403. progressDialog.dismiss();
  404.  
  405. if (task.isSuccessful()) {
  406. // admin profile login
  407. Intent intent = new Intent(LoginActivity.this, AdminActivity.class);
  408. intent.putExtra(AdminActivity.EXTRA_NAME, adminName);
  409. intent.putExtra(AdminActivity.EXTRA_PASSWORD, adminPass);
  410. startActivity(intent);
  411. }
  412. else{
  413. Toast.makeText(LoginActivity.this,"Admin Login Failed. Check Password.",Toast.LENGTH_LONG).show();
  414. }
  415. }
  416. });
  417.  
  418. }
  419.  
  420. @Override
  421. public void onClick(View v) {
  422. if (v == loginbtn) {
  423. Log.i(TAG, "Clicked Login..");
  424. if (rememberme.isChecked()) {
  425. loginPrefsEditor.putBoolean("saveLogin", true);
  426. loginPrefsEditor.putString("username", userid.getText().toString());
  427. loginPrefsEditor.putString("password", password.getText().toString());
  428.  
  429. loginPrefsEditor.apply();
  430. } else {
  431. loginPrefsEditor.clear();
  432. loginPrefsEditor.commit();
  433. }
  434.  
  435. Log.i(TAG, "Checking whether admin or User: ");
  436. checkAdminOrUser();
  437.  
  438. } else if (v == register) {
  439. startActivity(new Intent(LoginActivity.this, RegisterActivity.class));
  440. }
  441. }
  442.  
  443. private void checkAdminOrUser() {
  444. // checking admin
  445. databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
  446. @Override
  447. public void onDataChange(DataSnapshot dataSnapshot) {
  448. String adminName = String.valueOf(dataSnapshot.child("Name").getValue());
  449. String adminPass = String.valueOf(dataSnapshot.child("Password").getValue());
  450.  
  451. if (adminName != null && adminPass != null &&
  452. adminName.equals(String.valueOf(userid.getText())) &&
  453. adminPass.equals(String.valueOf(password.getText()))) {
  454. Log.i(TAG, "admin pass and admin name match");
  455. checkadmin = true;
  456. loginadmin(adminName, adminPass);
  457. } else {
  458. Log.i(TAG, "Normal User Login");
  459. checkadmin = false;
  460. loginUser();
  461. }
  462. }
  463.  
  464. @Override
  465. public void onCancelled(DatabaseError databaseError) {
  466.  
  467. }
  468. });
  469. }
  470.  
  471. // public void updateBackground() {
  472. // final Handler handler = new Handler();
  473. // handler.post(new Runnable() {
  474. // @Override
  475. // public void run() {
  476. // loginlayout = (LinearLayout) findViewById(R.id.login_layout);
  477. // TransitionDrawable trans = (TransitionDrawable) loginlayout.getBackground();
  478. // trans.startTransition(10000);
  479. //
  480. // handler.postDelayed(this, 10000);
  481. // }
  482. // });
  483. // }
  484.  
  485. }
  486.  
  487. apply plugin: 'com.android.application'
  488.  
  489. android {
  490. compileSdkVersion 25
  491. buildToolsVersion "25.0.2"
  492. defaultConfig {
  493. applicationId "apkcrew.teststationary"
  494. minSdkVersion 17
  495. targetSdkVersion 25
  496. versionCode 1
  497. versionName "1.0"
  498. testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
  499. }
  500. buildTypes {
  501. release {
  502. minifyEnabled false
  503. proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  504. }
  505. }
  506. }
  507.  
  508. dependencies {
  509. compile fileTree(dir: 'libs', include: ['*.jar'])
  510. androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
  511. exclude group: 'com.android.support', module: 'support-annotations'
  512. })
  513. compile 'com.android.support:appcompat-v7:25.3.1'
  514. compile 'com.android.support.constraint:constraint-layout:1.0.2'
  515. compile 'com.google.firebase:firebase-auth:11.0.2'
  516. compile 'com.google.firebase:firebase-database:11.0.2'
  517. compile 'com.android.support:design:25.3.1'
  518. compile 'com.github.JakeWharton:ViewPagerIndicator:2.4.1'
  519. compile 'com.itextpdf:itextg:5.5.9'
  520. testCompile 'junit:junit:4.12'
  521. }
  522. apply plugin: 'com.google.gms.google-services'
  523.  
  524. <?xml version="1.0" encoding="utf-8"?>
  525. <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  526. package="apkcrew.teststationary">
  527.  
  528. <uses-permission android:name="android.permission.INTERNET" />
  529. <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
  530. <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
  531.  
  532. <application
  533. android:allowBackup="true"
  534. android:icon="@mipmap/ic_launcher"
  535. android:label="@string/app_name"
  536. android:roundIcon="@mipmap/ic_launcher_round"
  537. android:supportsRtl="true"
  538. android:theme="@style/AppTheme">
  539. <activity android:name=".LoginActivity">
  540. <intent-filter>
  541. <action android:name="android.intent.action.MAIN" />
  542.  
  543. <category android:name="android.intent.category.LAUNCHER" />
  544. </intent-filter>
  545. </activity>
  546. <activity android:name=".RegisterActivity" />
  547. <activity android:name=".DetailActivity" />
  548. <activity android:name=".ViewRequest" />
  549. <activity android:name=".EmployeeInfo" />
  550. <activity android:name=".NewItemRequest" />
  551. <activity android:name=".FirstScreen" />
  552. <activity android:name=".AdminActivity" />
  553. <activity android:name=".ApproveRequests" />
  554. <activity android:name=".ApprovalConfirm" />
  555. <activity android:name=".AdminDetails"></activity>
  556. </application>
  557.  
  558. </manifest>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement