Thứ Ba, 5 tháng 3, 2019

Khóa học Android - Android - Màn hình đăng nhập

Ứng dụng đăng nhập là màn hình yêu cầu thông tin đăng nhập của bạn để đăng nhập vào một số ứng dụng cụ thể. Bạn có thể đã nhìn thấy nó khi đăng nhập vào facebook, twitter, v.v.

Chương này giải thích, cách tạo màn hình đăng nhập và cách quản lý bảo mật khi thực hiện các nỗ lực sai.

Khóa học lập trình Android chuyên nghiệp
Khóa học lập trình Android chuyên nghiệp

Trước tiên, bạn phải xác định hai TextView hỏi tên người dùng và mật khẩu của người dùng. Mật khẩu TextView phải có inputType được đặt thành mật khẩu. Khóa học lập trình Android Cú pháp của nó được đưa ra dưới đây
<EditText
   android:id = "@+id/editText2"
   android:layout_width = "wrap_content"
   android:layout_height = "wrap_content"
   android:inputType = "textPassword" />

<EditText
   android:id = "@+id/editText1"
   android:layout_width = "wrap_content"
   android:layout_height = "wrap_content"
/>
Xác định nút có văn bản đăng nhập và đặt thuộc tính onClick của nó . Sau đó, xác định hàm được đề cập trong thuộc tính onClick trong tệp java.
<Button
   android:id = "@+id/button1"
   android:layout_width = "wrap_content"
   android:layout_height = "wrap_content"
   android:onClick = "login"
   android:text = "@string/Login" 
/>
Trong tệp java, bên trong phương thức onClick lấy tên người dùng và mật khẩu văn bản bằng phương thức getText () và toString () và khớp với văn bản bằng hàm equals () .
EditText username = (EditText)findViewById(R.id.editText1);
EditText password = (EditText)findViewById(R.id.editText2);  

public void login(View view){
   if(username.getText().toString().equals("admin") && password.getText().toString().equals("admin")){
   
   //correcct password
   }else{
   //wrong password
} 
Điều cuối cùng bạn cần làm là cung cấp một cơ chế bảo mật, để tránh những nỗ lực không mong muốn. Đối với điều này, khởi tạo một biến và trên mỗi lần thử sai, giảm giá trị đó. Và khi nó đạt đến 0, vô hiệu hóa nút đăng nhập.
int counter = 3;
counter--;

if(counter==0){
   //disble the button, close the application e.t.c
}
Dưới đây là một ví dụ minh họa một ứng dụng đăng nhập. Nó tạo ra một ứng dụng cơ bản chỉ cung cấp cho bạn ba lần thử để đăng nhập vào một ứng dụng.

Để thử nghiệm với ví dụ này, bạn có thể chạy nó trên một thiết bị thực tế hoặc trong một trình giả lập.

Các bướcSự miêu tả
1Bạn sẽ sử dụng studio Android để tạo một ứng dụng Android theo gói com.example.sairamkrishna.myapplication.
3Sửa đổi tệp src / MainActivity.java để thêm mã cần thiết.
4Sửa đổi res / layout / Activity_main để thêm các thành phần XML tương ứng
5Chạy ứng dụng và chọn một thiết bị Android đang chạy và cài đặt ứng dụng trên đó và xác minh kết quả
Sau đây là nội dung của tệp hoạt động chính được sửa đổi src / MainActivity.java .
package com.example.sairamkrishna.myapplication;

import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.View;

import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;


public class MainActivity extends Activity  {
   Button b1,b2;
   EditText ed1,ed2;

   TextView tx1;
   int counter = 3;

   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

      b1 = (Button)findViewById(R.id.button);
      ed1 = (EditText)findViewById(R.id.editText);
      ed2 = (EditText)findViewById(R.id.editText2);

      b2 = (Button)findViewById(R.id.button2);
      tx1 = (TextView)findViewById(R.id.textView3);
      tx1.setVisibility(View.GONE);

      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            if(ed1.getText().toString().equals("admin") &&
               ed2.getText().toString().equals("admin")) {
                  Toast.makeText(getApplicationContext(),
                     "Redirecting...",Toast.LENGTH_SHORT).show();
               }else{
                  Toast.makeText(getApplicationContext(), "Wrong 
                     Credentials",Toast.LENGTH_SHORT).show();

                  tx1.setVisibility(View.VISIBLE);
                  tx1.setBackgroundColor(Color.RED);
                  counter--;
                  tx1.setText(Integer.toString(counter));

                  if (counter == 0) {
                     b1.setEnabled(false);
                  }
               }
         }
      });

      b2.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            finish();
         }
      });
   }
}

Sau đây là nội dung được sửa đổi của xml res / layout / Activity_main.xml.

Trong đoạn mã sau abc chỉ ra về logo của tutspoint.com

Sau đây là nội dung của res / value / string.xml .
<resources>
   <string name="app_name">My Application</string>
</resources>
Sau đây là nội dung của tệp AndroidManifest.xml .
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >
   
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
      
   </application>
</manifest>
Hãy thử chạy ứng dụng của chúng tôi, chúng tôi vừa sửa đổi. Tôi giả sử bạn đã tạo AVD của mình trong khi thực hiện thiết lập môi trường.

Để chạy ứng dụng từ studio Android, hãy mở một trong các tệp hoạt động của dự án của bạn và nhấp vào biểu tượng Chạy từ thanh công cụ.

Khóa học lập trình Android studio cài đặt ứng dụng trên AVD của bạn và khởi động nó và nếu mọi thứ đều ổn với thiết lập và ứng dụng của bạn, nó sẽ hiển thị theo cửa sổ Trình mô phỏng

Nhập bất cứ điều gì vào trường tên người dùng và mật khẩu, sau đó nhấn nút đăng nhập. Tôi đặt abc vào trường tên người dùng và abc trong trường mật khẩu. Tôi đã thất bại. Điều này được hiển thị dưới đây

Làm điều này thêm hai lần nữa và bạn sẽ thấy rằng bạn còn 0 lần đăng nhập và nút đăng nhập của bạn bị vô hiệu hóa.

Bây giờ hãy mở lại ứng dụng và lần này nhập tên người dùng chính xác là quản trị viên và mật khẩu là quản trị viên và nhấp vào đăng nhập. Bạn sẽ đăng nhập thành công.

Nếu người dùng nhấn vào nút hủy, nó sẽ đóng một ứng dụng của màn hình đăng nhập.

Không có nhận xét nào:

Đăng nhận xét

Lập trình Android - RenderScript

Trong chương này, chúng ta sẽ tìm hiểu về Android RenderScript. Thông thường các ứng dụng trên Android được thiết kế để tiêu thụ tài nguyên ...