/* * Copyright (C) 2016 Amit Shekhar * Copyright (C) 2011 Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.networking; import android.content.Intent; import android.graphics.Bitmap; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.ImageView; import com.androidnetworking.AndroidNetworking; import com.androidnetworking.common.Priority; import com.androidnetworking.error.ANError; import com.androidnetworking.interfaces.AnalyticsListener; import com.androidnetworking.interfaces.BitmapRequestListener; import com.androidnetworking.interfaces.JSONArrayRequestListener; import com.androidnetworking.interfaces.JSONObjectRequestListener; import com.androidnetworking.internal.ANImageLoader; import com.androidnetworking.widget.ANImageView; import com.networking.provider.Images; import org.json.JSONArray; import org.json.JSONObject; public class MainActivity extends AppCompatActivity { private static final String TAG = MainActivity.class.getSimpleName(); private static final String URL_IMAGE = "http://i.imgur.com/2M7Hasn.png"; private static final String URL_IMAGE_LOADER = "http://i.imgur.com/52md06W.jpg"; private ImageView imageView; private ANImageView ANImageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); imageView = (ImageView) findViewById(R.id.imageView); ANImageView = (ANImageView) findViewById(R.id.greatImageView); ANImageView.setDefaultImageResId(R.drawable.ic_toys_black_24dp); ANImageView.setErrorImageResId(R.drawable.ic_error_outline_black_24dp); ANImageView.setImageUrl(Images.imageThumbUrls[0]); makeJSONArrayRequest(); makeJSONObjectRequest(); } private void makeJSONArrayRequest() { AndroidNetworking.get(ApiEndPoint.BASE_URL + ApiEndPoint.GET_JSON_ARRAY) .setTag(this) .addPathParameter("pageNumber", "0") .addQueryParameter("limit", "3") .setPriority(Priority.LOW) .build() .setAnalyticsListener(new AnalyticsListener() { @Override public void onReceived(long timeTakenInMillis, long bytesSent, long bytesReceived, boolean isFromCache) { Log.d(TAG, " timeTakenInMillis : " + timeTakenInMillis); Log.d(TAG, " bytesSent : " + bytesSent); Log.d(TAG, " bytesReceived : " + bytesReceived); Log.d(TAG, " isFromCache : " + isFromCache); } }) .getAsJSONArray(new JSONArrayRequestListener() { @Override public void onResponse(JSONArray response) { Log.d(TAG, "onResponse array : " + response.toString()); } @Override public void onError(ANError error) { if (error.getErrorCode() != 0) { // received ANError from server // error.getErrorCode() - the ANError code from server // error.getErrorBody() - the ANError body from server // error.getErrorDetail() - just a ANError detail Log.d(TAG, "onError errorCode : " + error.getErrorCode()); Log.d(TAG, "onError errorBody : " + error.getErrorBody()); Log.d(TAG, "onError errorDetail : " + error.getErrorDetail()); } else { // error.getErrorDetail() : connectionError, parseError, requestCancelledError Log.d(TAG, "onError errorDetail : " + error.getErrorDetail()); } } }); } private void makeJSONObjectRequest() { AndroidNetworking.get(ApiEndPoint.BASE_URL + ApiEndPoint.GET_JSON_OBJECT) .setTag(this) .addPathParameter("userId", "1") .setPriority(Priority.HIGH) .build() .setAnalyticsListener(new AnalyticsListener() { @Override public void onReceived(long timeTakenInMillis, long bytesSent, long bytesReceived, boolean isFromCache) { Log.d(TAG, " timeTakenInMillis : " + timeTakenInMillis); Log.d(TAG, " bytesSent : " + bytesSent); Log.d(TAG, " bytesReceived : " + bytesReceived); Log.d(TAG, " isFromCache : " + isFromCache); } }) .getAsJSONObject(new JSONObjectRequestListener() { @Override public void onResponse(JSONObject response) { Log.d(TAG, "onResponse object : " + response.toString()); } @Override public void onError(ANError error) { if (error.getErrorCode() != 0) { // received ANError from server // error.getErrorCode() - the ANError code from server // error.getErrorBody() - the ANError body from server // error.getErrorDetail() - just a ANError detail Log.d(TAG, "onError errorCode : " + error.getErrorCode()); Log.d(TAG, "onError errorBody : " + error.getErrorBody()); Log.d(TAG, "onError errorDetail : " + error.getErrorDetail()); } else { // error.getErrorDetail() : connectionError, parseError, requestCancelledError Log.d(TAG, "onError errorDetail : " + error.getErrorDetail()); } } }); } public void makeRequests(View view) { for (int i = 0; i < 10; i++) { makeJSONArrayRequest(); makeJSONObjectRequest(); } } public void cancelAllRequests(View view) { AndroidNetworking.cancel(this); } public void loadImageDirect(View view) { AndroidNetworking.get(URL_IMAGE) .setTag("imageRequestTag") .setPriority(Priority.MEDIUM) .setImageScaleType(null) .setBitmapMaxHeight(0) .setBitmapMaxWidth(0) .setBitmapConfig(Bitmap.Config.ARGB_8888) .build() .setAnalyticsListener(new AnalyticsListener() { @Override public void onReceived(long timeTakenInMillis, long bytesSent, long bytesReceived, boolean isFromCache) { Log.d(TAG, " timeTakenInMillis : " + timeTakenInMillis); Log.d(TAG, " bytesSent : " + bytesSent); Log.d(TAG, " bytesReceived : " + bytesReceived); Log.d(TAG, " isFromCache : " + isFromCache); } }) .getAsBitmap(new BitmapRequestListener() { @Override public void onResponse(Bitmap response) { Log.d(TAG, "onResponse Bitmap"); imageView.setImageBitmap(response); } @Override public void onError(ANError error) { if (error.getErrorCode() != 0) { // received ANError from server // error.getErrorCode() - the ANError code from server // error.getErrorBody() - the ANError body from server // error.getErrorDetail() - just a ANError detail Log.d(TAG, "onError errorCode : " + error.getErrorCode()); Log.d(TAG, "onError errorBody : " + error.getErrorBody()); Log.d(TAG, "onError errorDetail : " + error.getErrorDetail()); } else { // error.getErrorDetail() : connectionError, parseError, requestCancelledError Log.d(TAG, "onError errorDetail : " + error.getErrorDetail()); } } }); } public void loadImageFromImageLoader(View view) { ANImageLoader.getInstance().get(URL_IMAGE_LOADER, ANImageLoader.getImageListener(imageView, R.drawable.ic_toys_black_24dp, R.drawable.ic_error_outline_black_24dp)); } public void startGridActivity(View view) { startActivity(new Intent(MainActivity.this, ImageGridActivity.class)); } public void startApiTestActivity(View view) { startActivity(new Intent(MainActivity.this, ApiTestActivity.class)); } public void startOkHttpResponseTestActivity(View view) { startActivity(new Intent(MainActivity.this, OkHttpResponseTestActivity.class)); } public void startWebSocketActivity(View view) { startActivity(new Intent(MainActivity.this, WebSocketActivity.class)); } }