سلام عزیزان ، همراهان گرامی ، با اموزش این بخش که در مورد تمرینات در اندروید همراه شما هستیم. امیدوارم که این مطلب بتونه درزمینه هر چه بهتر یادگیری شما کمک کند.

تمریناتی وجود دارند که درهنگام توسعه ی برنامه ی اندروید می توانید دنبال کنید. این تمرینها توسط خود اندروید پیشنهاد داده می شوند و با توجه به زمان ارتقا می یابند.

این تمرینات برتر شامل کنش و واکنش ویژگی های طرح، اجرا، امنیت، امور شخصی، سازگاری، تست کردن و نکات مربوط به انتشار و رسمیت پولی بخشیدن می شود. آنها در زیر لیست شده اند.
روش های برتر داخلی یوزر

هر فیلد متن برای کار خاصی در نظر گرفته شده است. به عنوان مثال برخی از این فیلدها برای متن و برخی برای اعداد هستند. در هنگام تمرکز بر روی آن تکست فیلد، اگر مربوط به اعداد است که بهتر است صفحه کلید عدد نمایش داده شود. ترکیب آن در زیر ارائه شده است .
?
۱
۲

در غیر این صورت اگر مربوط به پسورد می باشد، پس باید نمای پسورد نشان دهد طوری که یوزر بتواند به راحتی پسورد را به خاطر بسپارد. ترکیب آن مانند زیر می باشد .
?
۱
۲

‎‎‎‎‎

تمرینات برتر- پس زمینه

کارهای مشخصی در یک برنامه وجود دارند که در پس زمینه ی آن در حال اجرا هستند. این کارها عبارتند از گرفتن چیزی از اینترنت، اجرای موسیقی، و غیره باشد. پیشنهاد می شود که کارهایی که مدت طولانی در حال انتظار بوده اند، نباید با رشته ی UI انجام شوند بلکه بهتر است در پس زمینه توسط سرویس ها یا AsyncTask. انجام شوند.
AsyncTask. در مقایسه با سرویس ها

هردو برای انجام فعالیت های پس زمینه استفاده می شوند اما سرویس تحت تاثیر بسیاری از رویدادهای دوره ی کار اینترفیس یوزر قرار نمی گیرد، بنابراین به اجرا در محیط هایی ادامه می دهد که یک AsyncTask را می بندند.
تمرینات برتر- اجرا

زمانی که دستگاه شما به یک منبع نیرو یا شارژ متصل است، باید در انتهای پشتی ) نه در انتهای جلویی(، به طور متفاوت برنامه را اجرا کند. شارژممکن است از طریق USB یا از طریق کابل سیم انجام شود.

زمانی که دستگاه شما در حال شارژ کردن خود می باشد، پیشنهاد می شود که تنظیمات برنامه ی خود را آپدیت کنید، اگر برنامه ای باشد مانند به حداکثر رساندن میزان رفرش کردن در هنگام اتصال دستگاه. این کار می تواند به این شکل انجام شود.
?
۱
۲
۳
۴
۵
۶

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);‎
تمرینات برتر- امنیت و خصوصی سازی

بسیار مهم است که برنامه ی شما دارای امیت باشد، و نه تنها برنامه بلکه داده ی یوزر و داده ی برنامه هم باید دارای این امنیت باشند. امنیت با دنبال کردن فاکتورهای زیر افزایش می یابد.

از حافظه ی داخلی به جای حافظه ی خارجی برای ذخیره ی فایل های برنامه ها استفاده کنید.
هر جا ممکن است از تامین کننده ی محتوا استفاده کنید.
در هنگام اتصال به وب از SSI استفاده کنید.
از مجوزهای موجود برای دسترسی به کاربردهای مختلف برنامه ها استفاده کنید.

مثال:

مثال زیر برخی از تمرینات برتری را توضیح می دهد که شما باید در زمان توسعه ی برنامه ی اندروید دنبال کنید. در این مثال یک برنامه ی پایه ایجاد می شود که به شما اجازه می دهد تا تعیین کنید که چگونه از فیلدهای متن استفاده کنید و چگونه اجرا را به وسیله ی کنترل شارژ تلفن افزایش دهید.

برای آزمایش این مثال لازم است آن را روی دستگاه انروید اجرا کنید.
توضیحات
مراحل
شما برای ایجاد یک برنامه ی اندروید از Eclipse IDE استفاده خواهید کرد و آن را با عنوان BestPractices تحت بسته ی com.example.autocomplete نام گذاری می کنید. در هنگام ایجاد این پروژه مطمئن شوید که Target SDK و Compile With در آخرین ورژن اندروید SDK می باشند تا از سطوح بالاتر API ها استفاده کنید.
۱
فایل src/MainActivity.java را برای افزودن کد، تغییر دهید.
۲
لی اوت فایل XML مربوط به res/layout/activity_main.xml را تغییر دهید و اگر لازم است مولفه ی GUI اضافه کنید.
۳
فایل res/values/string.xml را تغییر دهید و مولفه های رشته ی لازم را اضافه کنید.
۴
فایل AndroidManifest.xml را برای افزودن دستورات لازم تغییر دهید.
۵
برنامه را اجرا کنید و یک دستگاه اجرایی اندروید انتخاب کنید و برنامه را روی آن نصب کنید و نتایج را بررسی کنید.
۶

در اینجا محتوای src/com.example.bestpractices/MainActivity.java را مشاهده می کنید.
?
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱
۲۲
۲۳
۲۴
۲۵
۲۶
۲۷
۲۸
۲۹
۳۰
۳۱
۳۲
۳۳
۳۴
۳۵
۳۶
۳۷
۳۸
۳۹
۴۰
۴۱
۴۲
۴۳
۴۴
۴۵
۴۶

‎package com.example.bestpractices;‎
import android.os.BatteryManager;‎
import android.os.Bundle;‎
import android.app.Activity;‎
import android.content.Intent;‎
import android.content.IntentFilter;‎
import android.view.Menu;‎
import android.view.View;‎
import android.widget.Button;‎
import android.widget.Toast;‎
public class MainActivity extends Activity {‎
‎ private Button Check;‎
‎ private BatteryManager battery;‎
‎ @Override
‎ protected void onCreate(Bundle savedInstanceState) {‎
‎ super.onCreate(savedInstanceState);‎
‎ setContentView(R.layout.activity_main);‎
‎ Check = (Button)findViewById(R.id.button1);‎
‎ }‎
‎ public void check(View view){‎
‎ 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;‎
‎ // How are we charging?‎
‎ int chargePlug = ‎batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED,‎
‎ -۱);‎
‎ 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
‎ public boolean onCreateOptionsMenu(Menu menu) {‎
‎ // Inflate the menu; this adds items to the action bar ‎if it is present.‎
‎ getMenuInflater().inflate(R.menu.main, menu);‎
‎ return true;‎
‎ }‎
}‎

در اینجا محتوای فایل activity_main.xml را مشاهده می کنید.
?
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱
۲۲


‎ ‎

‎ ‎
‎‎

‎ ‎

‎ ‎

در اینجا محتوای Strings.xml را مشاهده می کنید.
?
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱


‎ BestPractices‎

‎ Settings‎

‎ Hello world!‎

‎ Username‎

‎ Password‎

‎ Hello world!‎

‎ Charging check‎

Here is the content of AndroidManifest.xml

در اینجا محتوای AndroidManifest.xml را مشاهده می کنید.
?
۱
۲
۳
۴
۵
۶
۷
۸
۹
۱۰
۱۱
۱۲
۱۳
۱۴
۱۵
۱۶
۱۷
۱۸
۱۹
۲۰
۲۱

‎‎



‎ ‎







‎ ‎

‎ ‎


‎ ‎
‎ ‎

اجازه بدهید برنامه ی BestPractices شما را اجرا کنیم. فرض می کنیم که دستگاه موبایل اندروید خود را به کامپیوتر متصل کرده اید. برای اجرای برنامه از Eclipse، یکی ازفایل های فعالیت پروژه را باز کرده و روی آیکن Run از تولبار کلیک کنید. قبل از شروع برنامه ی شما، Eclipse پنجره ی زیر را برای انتخاب گزینه ی محل اجرای برنامه ی اندرویدتان، نمایش خواهد داد.
آموزش بهترین تمرینات اندروید

دستگاه موبایل خود را به عنوان یک گزینه انتخاب کنید و سپس آن را چک کنید که صفحه ی زیر را نمایش خواهد داد.
آموزش بهترین تمرینات اندروید

اکنون روی فیلد Username تایپ کنید، و شما پیشنهادات داخلی اندروید را مشاهده می کنید که از دیکشنری می آیند. این امر در زیر نمایش داده شده است.
آموزش بهترین تمرینات اندروید

اکنون شما اشاره گر را در فیلد پسورد مشاهده می کنید که به محض اینکه آغاز به نوشتن کنید، ناپدید می شود. این امر در زیر نمایش داده شده است.
آموزش بهترین تمرینات اندروید

در انتها دستگاه خود را به کابل AC یا کابل USB متصل کنید و دکمه ی Charging check را فشار دهید. من دستگاه خود را از طریق یک کابل USB به یک کامپیوتر متصل می کنم که پیغام آن در زیر نمایش داده شده است.