При отображении контекста происходит сбой. В чем может быть проблема? По вашему запросу результатов не найдено.
Если результаты найдены, при отсутствии контекстного меню отображается, что результаты не найдены, но выдает ошибку и сбой приложения
public void run(final View view) throws IOException{
Log.d(TAG, "run: up and running...");
if (frag_id==0 || frag_id==1) { //if home fragment & search fragment
Log.d(TAG, "getIntentData: frag id not 2");
if (search_term == null) {
urlImage = "https://api.pexels.com/v1/curated";
} else {
int randPage;
do {
randPage = new Random().nextInt(15);
}while(randPage==0);
urlImage = "https://api.pexels.com/v1/search?query=" + search_term.toLowerCase() + "&per_page=15&page=" + randPage;
}
}
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.header("Authorization", StaticUtils.API_KEY)
.url(urlImage)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(@NonNull Call call, @NonNull IOException e) {
call.cancel();
}
@Override
public void onResponse(@NonNull Call call, @NonNull Response response) throws IOException {
final String myResponse = response.body() != null ? response.body().string() : null;
runOnUiThread(new Runnable() {
@Override
public void run() {
Log.d(TAG, "run: integrated successfully: ");
if (!StaticUtils.imagesListTemp.isEmpty()){
StaticUtils.imagesListTemp.clear();
}
try {
JSONObject json = new JSONObject(myResponse);
JSONArray jsonArray = json.getJSONArray("photos");
if (jsonArray.length()>0){
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject jsonObject = jsonArray.getJSONObject(i);
int imageId = jsonObject.getInt("id");
String srcName = jsonObject.getString("photographer");
String srcUrl = jsonObject.getString("photographer_url");
String dimen = jsonObject.getString("width")+"x"+jsonObject.getString("height");
JSONObject srcObject = jsonObject.getJSONObject("src"); //getting the image sources of different dimens
String imgSrcOrg = srcObject.getString("original");
String imgSrcLarg = srcObject.getString("large");
String imgSrcMid = srcObject.getString("medium");
String imgSrcSml = srcObject.getString("small");
String imgSrcPort = srcObject.getString("portrait");
String imgSrcLand = srcObject.getString("landscape");
String imgSrcTiny = srcObject.getString("tiny");
ImageDifferentSize imageArray = new ImageDifferentSize(imgSrcOrg,imgSrcLarg,imgSrcMid,imgSrcSml,imgSrcPort,imgSrcLand,imgSrcTiny);
StaticUtils.imagesListTemp.add(new ImagesItem(imageId, srcName, dimen, srcUrl,imageArray));
ImagesFragment.adapter.notifyDataSetChanged();
}
}else{
//replace with snackBar
Toast.makeText(getApplicationContext(), "This is my Toast message!",
Toast.LENGTH_SHORT).show();
}
Log.d(TAG, "run: List size: "+StaticUtils.imagesListTemp.size());
boolean isAddSucceed = StaticUtils.imagesList.addAll(StaticUtils.imagesListTemp);
Log.d(TAG, "onCreate: Copy operation succeed:"+isAddSucceed+", Final arrayList size: "+StaticUtils.imagesList.size());
} catch (JSONException e) {
Log.d(TAG, "onResponse: Json Parsing data error.");
e.printStackTrace();
}
}
Когда при отображении контекста происходит сбой. В чем может быть проблема? По вашему запросу результатов не найдено.
Если результаты найдены, отображается, если контекстное меню отсутствует, что результаты не найдены, но выдает ошибку и сбой приложения