public void SearchFiles(String searchName) { try { VKParameters params = new VKParameters(); params.put(VKApiConst.Q, searchName); params.put(VKApiConst.COUNT, "200"); VKRequest request = VKApi.audio().search(params); request.executeWithListener( new VKRequest.VKRequestListener() { @Override public void onComplete(VKResponse response) { super.onComplete(response); try { searchFiles.clear(); VkAudioArray audioArray = new VkAudioArray(); audioArray.parse(response.json); for (int i = 0; i < audioArray.size(); i++) searchFiles.add( new MusicFile( audioArray.get(i).id, audioArray.get(i).owner_id, audioArray.get(i).artist, audioArray.get(i).title, audioArray.get(i).duration, audioArray.get(i).url, audioArray.get(i).genre)); searchAdapter.notifyDataSetChanged(); } catch (JSONException e) { e.printStackTrace(); } } @Override public void onError(VKError error) { super.onError(error); } }); } catch (NullPointerException e) { Toast.makeText( getApplicationContext(), "Please authrorize app in settings", Toast.LENGTH_LONG) .show(); e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); Toast.makeText(getApplicationContext(), "Error with getting list", Toast.LENGTH_LONG).show(); } }