Android - Các phương pháp hay nhất

Có một số thực hành mà bạn có thể làm theo khi phát triển ứng dụng Android. Những điều này được đề xuất bởi chính android và chúng tiếp tục cải thiện theo thời gian.

Các phương pháp hay nhất này bao gồm các tính năng thiết kế tương tác, hiệu suất, bảo mật và quyền riêng tư, khả năng tương thích, thử nghiệm, phân phối và các mẹo kiếm tiền. Chúng được thu hẹp lại và được liệt kê như bên dưới.

Các phương pháp hay nhất - Người dùng nhập

Mỗi trường văn bản được dành cho một công việc khác nhau. Ví dụ: một số trường văn bản dành cho văn bản và một số trường dành cho số. Nếu đó là dành cho số thì tốt hơn là hiển thị bàn phím số khi trường văn bản đó được lấy tiêu điểm. Cú pháp của nó là.

<EditText
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/editText"
   android:layout_alignParentRight="true"
   android:layout_alignParentEnd="true"
   android:hint="User Name"
   android:layout_below="@+id/imageView"
   android:layout_alignLeft="@+id/imageView"
   android:layout_alignStart="@+id/imageView"
   android:numeric="integer" />

Khác thì nếu trường của bạn dành cho mật khẩu thì trường đó phải hiển thị gợi ý mật khẩu để người dùng có thể dễ dàng nhớ mật khẩu. Nó có thể đạt được như.

<EditText
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:id="@+id/editText2"
   android:layout_alignLeft="@+id/editText"
   android:layout_alignStart="@+id/editText"
   android:hint="Pass Word"
   android:layout_below="@+id/editText"
   android:layout_alignRight="@+id/editText"
   android:layout_alignEnd="@+id/editText"
   android:password="true" />

Các phương pháp hay nhất - Công việc cơ bản

Có một số công việc nhất định trong một ứng dụng đang chạy trên nền ứng dụng. Công việc của họ có thể là tìm nạp một số thứ từ internet, chơi nhạc, v.v. Chúng tôi khuyến nghị rằng các tác vụ chờ đợi lâu không nên được thực hiện trong chuỗi giao diện người dùng và thay vào đó là dịch vụ hoặc AsyncTask trong nền.

Dịch vụ AsyncTask Vs.

Cả hai đều được sử dụng để thực hiện các tác vụ nền, nhưng dịch vụ không bị ảnh hưởng bởi hầu hết các sự kiện trong vòng đời giao diện người dùng, vì vậy nó tiếp tục chạy trong các trường hợp có thể làm tắt AsyncTask.

Các phương pháp hay nhất - Hiệu suất

Hiệu suất ứng dụng của bạn phải được nâng cao. Nhưng nó sẽ hoạt động khác không phải ở mặt trước mà là ở mặt sau khi thiết bị được kết nối với nguồn điện hoặc đang sạc. Có thể sạc từ USB và từ cáp dây.

Khi thiết bị của bạn tự sạc, bạn nên cập nhật cài đặt ứng dụng của mình nếu có, chẳng hạn như tối đa hóa tốc độ làm mới bất cứ khi nào thiết bị được kết nối. Nó có thể được thực hiện như thế này.

IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = context.registerReceiver(null, ifilter);

// Are we charging / charged? Full or charging.
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);

// How are we charging? From AC or USB.
int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);

Các phương pháp hay nhất - Bảo mật và quyền riêng tư

Điều rất quan trọng là ứng dụng của bạn phải được bảo mật và không chỉ ứng dụng, mà dữ liệu người dùng và dữ liệu ứng dụng cũng phải được bảo mật. Bảo mật có thể được tăng lên bởi các yếu tố sau.

  • Sử dụng bộ nhớ trong thay vì bộ nhớ ngoài để lưu trữ các tệp ứng dụng

  • Sử dụng các nhà cung cấp nội dung bất cứ khi nào có thể

  • Sử dụng SSl khi kết nối với web

  • Sử dụng các quyền thích hợp để truy cập các chức năng khác nhau của thiết bị

Thí dụ

Ví dụ dưới đây minh họa một số phương pháp hay nhất mà bạn nên làm theo khi phát triển ứng dụng Android. Nó đóng một ứng dụng cơ bản cho phép bạn chỉ định cách sử dụng các trường văn bản và cách tăng hiệu suất bằng cách kiểm tra trạng thái sạc của điện thoại.

Để thử nghiệm với ví dụ này, bạn cần chạy nó trên một thiết bị thực tế.

Các bước Sự miêu tả
1 Bạn sẽ sử dụng Android studio IDE để tạo ứng dụng Android theo gói com.example.sairamkrishna.myapplication.
2 Sửa đổi tệp src / MainActivity.java để thêm mã
3 Sửa đổi tệp XML bố cục res / layout / activity_main.xml thêm bất kỳ thành phần GUI nào nếu cần.
4 Chạ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ả.

Đây là nội dung của src/MainActivity.java

package com.example.sairamkrishna.myapplication;

import android.content.Intent;
import android.content.IntentFilter;
import android.os.BatteryManager;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

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

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

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

      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         
         public void onClick(View v) {
            IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
            Intent batteryStatus = registerReceiver(null, ifilter);

            int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
            boolean isCharging = status == BatteryManager.BATTERY_STATUS_CHARGING ||
            status == BatteryManager.BATTERY_STATUS_FULL;

            int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED,-1);
            boolean usbCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_USB;
            boolean acCharge = chargePlug == BatteryManager.BATTERY_PLUGGED_AC;

            if(usbCharge){
               Toast.makeText(getApplicationContext(),"Mobile is charging on USB",
                  Toast.LENGTH_LONG).show();
            } else {
               Toast.makeText(getApplicationContext(),"Mobile is charging on AC",
                  Toast.LENGTH_LONG).show();
            }
         }
      });
   }

   @Override
   protected void onDestroy() {
      super.onDestroy();
   }
}

Đây là nội dung của activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
   <RelativeLayout 
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" 
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" 
   tools:context=".MainActivity">
   
   <TextView android:text="Bluetooth Example" 
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/textview"
      android:textSize="35dp"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true" />
      
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials point"
      android:id="@+id/textView"
      android:layout_below="@+id/textview"
      android:layout_centerHorizontal="true"
      android:textColor="#ff7aff24"
      android:textSize="35dp" />
      
   <ImageView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/imageView"
      android:src="@drawable/abc"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true" />
      
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"
      android:hint="User Name"
      android:layout_below="@+id/imageView"
      android:layout_alignLeft="@+id/imageView"
      android:layout_alignStart="@+id/imageView"
      android:numeric="integer" />
      
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText2"
      android:layout_alignLeft="@+id/editText"
      android:layout_alignStart="@+id/editText"
      android:hint="Pass Word"
      android:layout_below="@+id/editText"
      android:layout_alignRight="@+id/editText"
      android:layout_alignEnd="@+id/editText"
      android:password="true" />
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Check"
      android:id="@+id/button"
      android:layout_below="@+id/editText2"
      android:layout_centerHorizontal="true" />
      
</RelativeLayout>

Đây là nội dung của Strings.xml

<resources>
    <string name="app_name">My Application</string>
</resources>

Đây là nội dung của 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="@drawable/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name="com.example.sairamkrishna.myapplication.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 bạn. Tôi giả sử bạn đã kết nối thiết bị di động Android thực tế với máy tính của mình. Để chạy ứng dụng từ Android studio, 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ụ. Android Studio sẽ hiển thị các Hình ảnh sau.

Hình ảnh trên cho thấy một đầu ra của ứng dụng

Bây giờ chỉ cần gõ vào trường tên người dùng và bạn sẽ thấy các đề xuất android được tích hợp sẵn từ từ điển sẽ bắt đầu xuất hiện. Điều này được hiển thị ở trên.

Bây giờ bạn sẽ thấy trường mật khẩu. Nó sẽ biến mất ngay khi bạn bắt đầu viết trên thực địa. Nó được hiển thị ở trên.

Cuối cùng, chỉ cần kết nối thiết bị của bạn với cáp AC hoặc cáp USB và nhấn vào nút kiểm tra sạc. Trong trường hợp của tôi, tôi kết nối nguồn AC, nó hiển thị thông báo sau.