2016-04-11 25 views
1

Bunun gibi birçok konu olduğunu biliyorum, çılgın gibi arama yaptım ve çoğunu okudum, ancak gerçekten bana yardımcı olan ve işe yarayan bir cevap bulamıyorum.GET İsteği

Yapmak istediğim şey çok basit, sadece GET kullanarak 2 değer göndermek ve bunları MySql'e kaydetmek istiyorum.

Zaten PHP dosyası oluşturduk ve (el krom bunu test) çalışıyor ve ben Android Studio'da bu kodu vardır: başka ne denemek bilmiyorum

try { 
     URL url = new URL("http://myWebsite.com/connection.php"); 
     HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 
     urlConnection.setRequestProperty("value1","blabla"); 
     urlConnection.setRequestProperty("value2","blabla"); 

    } catch(Exception e){ 
    Log.d("Exception",e.toString()); 
    } 

şey Bunun gibi çok basit olmalı, ama bir çözüm bulamıyorum.

Teşekkürler!

Düzenleme: Ben de denedim:

try { 
     URL url = new URL("http://myWebsite.com/connection.php?value1=blabla&value2=blubla"); 
     HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 

    } catch(Exception e){ 
    Log.d("Exception",e.toString()); 
    } 

Düzenleme 2: Eklendi bu benim koduna: Artık Im çağıran

private class MyTask extends AsyncTask<Void, Void, Void> { 


     @Override 
     protected Void doInBackground(Void... voids) { 
      try { 
       URL url = new URL("http://mySite.tk/connection.php?value1=blabla&value2=blubla"); 
       HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 
       Log.d("Progress","Sending.."); 
       urlConnection.connect(); 
       Log.d("Progress","Sent!"); 

      } catch(Exception e){ 
       Log.d("Message",e.toString()); 
      } 
      return null; 
     } 
    } 

"Yeni MyTask() yürütmek()" tıklayarak Bir düğme, ancak çalışmıyor :(

cevap

1

kolayca ben senin futur istekleri için Voleybolu kullanarak düşünmenizi salık Android

üzerine istek için dizayn edildiğinden Volley denilen Google'ın kütüphane, GET İstekleri gönderebilir, burada bir GET isteği bir örnektir:

+0

Bu yardımcı oldu, kodu ekledim ve sadece volley.jar dosyasını indirmem gerekti ve değiştirdim ve projemin libs klasörüne ekledim. Korku veren! Teşekkür ederim!! Emin değilim tek şey (Ama çalışıyor) ben get isteği burada gönderirim ki burada String son = url = "http://yourScript.com/scipt.php?value=vala&value2=vala2"; Bu şekilde mi çalışıyor? Veya talebi HashMap’te göndermem gerekir mi? – Laurenzanoster

+0

Aslında bilmiyorum çünkü genellikle Posta isteklerini kullanıyorum!Php betiğinizdeki testlerle her iki yolu da deneyin ('if (isset ($ _ GET ['parameter1']))') –

+0

Tamam, evet, HashMap'in sadece posta isteği için kullanıldığını düşünüyorum, aslında daha fazla güvenli. Bir kez daha teşekkür ederim! – Laurenzanoster

1

Değerler, özellikler olarak gönderilmez. URL'nin bir parçası olarak gönderilirler. http://example.com/myurl?variable1=value1&variable2=value2

+0

Haklısınız, ayrıca "setRequestProperty" olarak değiştirmeden önce denediniz. – Laurenzanoster

+0

Peki, urlConnection .connect'i yaptınız ve sonuçta gerçekten okudunuz, değil mi? Değişkenleri yollamakta zorluk çektiğini sanmıştım. Yukarıdaki kod, nesneyi oluşturur, aslında web sunucunuza henüz vurmaz. –

+0

Sadece ekledim urlConnection.connect(); Son satırın üstünde {} deneyin. Şimdi bu hatayı alıyorum: android.os.NetworkOnMainThreadException. – Laurenzanoster

İlgili konular