падает приложение для публикации вконтакте

Ответить
yura91
Сообщения: 265
Зарегистрирован: 22 авг 2014, 13:43

падает приложение для публикации вконтакте

Сообщение yura91 » 19 май 2015, 20:19

Код: Выделить всё

public class VkWebViewClient extends WebViewClient {

    private static final String TAG = "Vkfunc";
   public String access;
   public String us_id;
   public String mess;
    public VkWebViewClient() {
        // TODO Auto-generated constructor stub
    }

    @Override
    public void onPageFinished(WebView view, String url) {
        Log.i("VkWebViewClient onPageFinished", url);
        if (url.contains("oauth.vk.com/blank.html#")) {
            if (url.contains("error")) {
                // Error
            } else {
                String ahrore = url.substring(url.indexOf("#") + 1);

                Log.d(TAG, ahrore);

                String access_token = ahrore.substring(ahrore.indexOf("n")+2,ahrore.indexOf("&"));
                access = access_token;
                //String user_id = null;

                Log.d(TAG, access_token);

                int i = ahrore.lastIndexOf("=");
                String tmpStr = ahrore.substring(i + 1, ahrore.length());

                Log.d(TAG, tmpStr);
                us_id = tmpStr;

                Log.d(TAG, us_id);
                boolean errorFlag = true;


                String mess = "Hello Post";



                mess = "Hello";
                String urls = "https://api.vk.com/method/"+
                        "wall.post?"+
                        "uid="+ us_id+
                        "&message="+mess+
                        "&access_token="+access
                        ;

                HttpClient client = new DefaultHttpClient();
                HttpPost request = new HttpPost(urls);

                try {
                    HttpResponse response = client.execute(request); на этой строчке падает приложение
                    Log.d(TAG, "Запрос");

                    HttpEntity entity = response.getEntity();
                    Log.d(TAG, "Запрос");
                    String responseText = EntityUtils.toString(entity);

                    //parse response for error code or not
                   // errorFlag = parseResponse(responseText);

                    //Log.d(Constants.DEBUG_TAG,"response text="+responseText);
                }
                catch(ClientProtocolException cexc){
                    cexc.printStackTrace();
                }
                catch(IOException ioex){
                    ioex.printStackTrace();
                }

            }



        }

    }
}
Я успешно получил access token и user_id вконтакте. Но когда я деляю запрос к API вконтакте для публикации сообщения на стене возникает ошибка Has Stopped. Посмотрите пожалуйста код я пометил место где возникает ошибка. Скажите из за чего возникает ошибка?? Как это исправить?? У меня время жизни токена 0. Может поэтому??

ANdriy123456
Сообщения: 138
Зарегистрирован: 27 июн 2014, 01:41

Re: падает приложение для публикации вконтакте

Сообщение ANdriy123456 » 19 май 2015, 22:45

я использовал библиотеку AsyncHttpClient для создания запростов к апи и не видeл проблем.

Код: Выделить всё

public static void add_sound(int id, int owner, final Context ctx){
		String token = "";
		token = ShPrefs.LoadStringPrefs("token", "", ctx);
		String Url = "https://api.vkontakte.ru/method/audio.add?audio_id=" + id + "&owner_id=" + owner + "&access_token=" + token;
		AsyncHttpClient client = new AsyncHttpClient(true, 80, 443);
		  client.get(Url, new JsonHttpResponseHandler() {
		      @Override
		      public void onSuccess(JSONObject resp) {
		    	  try {
		    		if(resp.getInt("response")>1){
		    			Toast.makeText(ctx, ctx.getString(R.string.sound_aded), Toast.LENGTH_SHORT).show();
		    		}
		  		} catch (JSONException e) {
		  			Toast.makeText(ctx, ctx.getString(R.string.error), Toast.LENGTH_SHORT).show();
		  			e.printStackTrace();
		  		}
		      }
		  });
	}

yura91
Сообщения: 265
Зарегистрирован: 22 авг 2014, 13:43

Re: падает приложение для публикации вконтакте

Сообщение yura91 » 20 май 2015, 09:12

а эту библиотеку надо подключать или она в SDK входит??если надо то дайте ссылку где её взять?

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: падает приложение для публикации вконтакте

Сообщение altwin » 20 май 2015, 17:32

yura91 писал(а):а эту библиотеку надо подключать или она в SDK входит??если надо то дайте ссылку где её взять?
http://lmgtfy.com/?q=AsyncHttpClient
Изображение

Ответить