Soru & Cevap

VERİTABANIMDAN MÜŞTERİ BORCUNA BAĞLANMAK

07.12.2013 - 05:11

Merhaba,

Aşağıda veritrabınıma sorgu gönderip cevap aldığım bir php sayfama bağlanmayı ve gelen cevabı android bir telefonu arayan müşterinin bilgisni anında görmeyi amaçladığım bir program yazıyorum.

Sorunum şu: Gelen arama numarasını php linkime gidip numaradaki müşteri bilgilerimi okuyor ancak arama sonrasında müşteri bilgilerini okuyorum. 

Ben arama sırasında toast. mesajında anlık görmek istiyorum.

Örnek: Arayan 053* *** **** . altta da sorgum çalışıyor ama toast ile ekrana gösteremiyorum. Teşekkürler şimdiden.

case TelephonyManager.CALL_STATE_RINGING:
    // CALL_STATE_RINGING
       numara.setText(incomingNumber);
        WebView webview = (WebView) findViewById(R.id.webView1);
          webview.getSettings().setJavaScriptEnabled(true);
          webview.loadUrl("http://xxxxxxxxxxxx?islem=2&cep_tel="+incomingNumber);
          Toast.makeText(getApplicationContext(),"Musteri Kayıtları okunuyor",
      Toast.LENGTH_LONG).show();
    

11 Görüntülenme

5 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-8414-1469696921.jpg
bcavlak
11.12.2013 - 12:53

Selam.

Aşağıdaki kodlar ile sorunum çözüldü. Faruk arkadaşımınkine benziyor ama nedense çalıştıramamıştım.

Teşekkürler.

 Thread background = new Thread(new Runnable() {
            
           private final HttpClient Client = new DefaultHttpClient();
           private String URL = "http://***.php?islem=2&cep_tel=" + incomingNumber;
            
           // After call for background.start this run method call
           public void run() {
               try {

                   String SetServerString = "";
                   HttpGet httpget = new HttpGet(URL);
                   ResponseHandler<String> responseHandler = new BasicResponseHandler();
                   SetServerString = Client.execute(httpget, responseHandler);
                   threadMsg(SetServerString);

               } catch (Throwable t) {
                   // just end the background thread
                   Log.i("Animation", "Thread  exception " + t);
               }
           }

           private void threadMsg(String msg) {

               if (!msg.equals(null) && !msg.equals("")) {
                   Message msgObj = handler.obtainMessage();
                   Bundle b = new Bundle();
                   b.putString("message", msg);
                   msgObj.setData(b);
                   handler.sendMessage(msgObj);
               }
           }

           // Define the Handler that receives messages from the thread and update the progress
           @SuppressLint("HandlerLeak")
            private final Handler handler = new Handler() {

               public void handleMessage(Message msg) {
                    
                   String aResponse = msg.getData().getString("message");

                   if ((null != aResponse)) {

                       // ALERT MESSAGE
                       Toast.makeText(getBaseContext(),aResponse,
                               Toast.LENGTH_LONG).show();
                       musteri.setText(aResponse);
                   }
                   else
                   {

                           // ALERT MESSAGE
                           Toast.makeText(
                                   getBaseContext(),
                                   "Nar musterisi degil.",
                                   Toast.LENGTH_SHORT).show();
                   }    

               }
           };

       });
       // Start Thread
       background.start();  //After call start method thread called run Method
   }

picture-8414-1469696921.jpg
bcavlak
09.12.2013 - 12:31

Sanırım kodlamanın başka bir yerinde yanlış yapıyorum. Sorgulama boş dönüyor çıktı vermedi.

:(

picture-8414-1469696921.jpg
bcavlak
07.12.2013 - 06:59

Merhaba Değerli arkadaşım.

Cevabını uygulamama adapte etmeye çalıştım. Sanırım outputstream yerine input stream java.io referansına ihtiyacım var. x.php deki cevap bilgimi okutup bunu toast. ile ekrana yazmak istiyorum. Denedim yinede olmadı.

teşekkür ederim cevap için.