خانه » آموزش برنامه نویسی اندروید » ۵ لایبرری جاوا که هر برنامه نویس اندروید باید بداند !

۵ لایبرری جاوا که هر برنامه نویس اندروید باید بداند !

۱ . GSON

لایببری برای تبدیل Json به آبجکت و تبدیل Object به Json

// Serialize 
String userJSON = new Gson().toJson(user);

// Deserialize
User user = new Gson().fromJson(userJSON, User.class);

۲٫ RETROFIT

برای کار با REST API  

public interface RetrofitInterface {

    // asynchronously with a callback
    @GET("/api/user")
    User getUser(@Query("user_id") int userId, Callback<User> callback);

    // synchronously
    @POST("/api/user/register")
    User registerUser(@Body User user);
}


// example
RetrofitInterface retrofitInterface = new RestAdapter.Builder()
            .setEndpoint(API.API_URL).build().create(RetrofitInterface.class);

// fetch user with id 2048
retrofitInterface.getUser(2048, new Callback<User>() {
    @Override
    public void success(User user, Response response) {

    }

    @Override
    public void failure(RetrofitError retrofitError) {

    }
});

۳٫ EVENTBUS

public class NetworkStateReceiver extends BroadcastReceiver {

    // post event if there is no Internet connection
    public void onReceive(Context context, Intent intent) {
        super.onReceive(context, intent);
        if(intent.getExtras()!=null) {
            NetworkInfo ni=(NetworkInfo) intent.getExtras().get(ConnectivityManager.EXTRA_NETWORK_INFO);
            if(ni!=null && ni.getState()==NetworkInfo.State.CONNECTED) {
                // there is Internet connection
            } else if(intent
                .getBooleanExtra(ConnectivityManager.EXTRA_NO_CONNECTIVITY,Boolean.FALSE)) {
                // no Internet connection, send network state changed
                EventBus.getDefault().post(new NetworkStateChanged(false));
            }
}

// event
public class NetworkStateChanged {

    private mIsInternetConnected;

    public NetworkStateChanged(boolean isInternetConnected) {
        this.mIsInternetConnected = isInternetConnected;
    }

    public boolean isInternetConnected() {
        return this.mIsInternetConnected;
    }
}

public class HomeActivity extends Activity {

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

        EventBus.getDefault().register(this); // register EventBus
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        EventBus.getDefault().unregister(this); // unregister EventBus
    }

    // method that will be called when someone posts an event NetworkStateChanged
    public void onEventMainThread(NetworkStateChanged event) {
        if (!event.isInternetConnected()) {
            Toast.makeText(this, "No Internet connection!", Toast.LENGTH_SHORT).show();
        }
    }

}

 

۴٫ ACTIVEANDROID

یک ORM برای دیتابیس اندروید می باشدکه توسط آن نیازی به نوشتن sql های بزرگ و پیچیده نخواهید داشت

به راحتی می توانید آبجکت های خود را با دستوری مشابه دستور زیر در دیتابیس ذخیره کنید:

user.save();

که در جایگذین دستور زیر در sql می شود !!!

INSERT INTO Users (Nickname, Name, Address, City, PostalCode, Country) VALUES ('Batman','Bruce W','Palisades 21','Gotham','40000','USA');

و یک مثال برای گرفتن اطلاعات داخل دیتابیس :

List<User> users = new Select().from(User.class).execute();

که این دستور نیز جایگرین دستور زیر می باشد :

SELECT Nickname, Name, Address, City, PostalCode, Country FROM Users;

همچنین می توانید از 2 لایبرری ORM دیگر  GreenDAO و ORMLite استفاده کنید.

 

۵٫ UNIVERSAL IMAGE LOADER

لایبرری برای نمایش و کش کردن تصاویر از سمت سرور

کافیست ایمیج ویو و  لینک تصویر را به متد زیر بدهید تا تصویر از سرور لود شده و در ایمیج ویو قرارگیرد 

imageLoader.displayImage(imageUri, imageView);

 

https://www.infinum.co/the-capsized-eight/articles/top-5-android-libraries-every-android-developer-should-know-about

برچسب ها:
پست قبلی
پست بعدی

درباره ایلیا عابدینی

برنامه نویس اندروید و کارشناس مهندسی پزشکی، نفر سوم مسابقه برنامه نویسی اندروید http://www.schallenge.ir ، از سال 92 برنامه نویسی اندروید رو شروع کردم و در حال حاضر در شرکت عصر دانش در حال توسعه اپلیکیشن تجارت پی می باشدم ، این وبلاگ رو ساختم تا تجربیات روزانه و مفید خودم رو داخل اون بزارم. رزومه : iact.ir/cv

2 دیدگاه

  1. سلام به شما

    از مطالب شما استفاده کردم

    خسته نباشید

    اگر مایل به تبادل لینک باشید، منتظرم

    سایت ما

    http://parsiprozhe.ir

  2. آقا دست شما درد نکنه که برای ما تازه کاران این نکات مفید رو میزارید از همینجا به شما خسته نباشید میگم و آروزی موفقیت دارم برای تک تک جوانان این مرز و بوم

دیدگاهتان را ثبت کنید

آدرس ایمیل شما منتشر نمی شود.علامت دارها لازمند. *

*

رفتن به بالا