Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 108,450

HOME > Mobile > Mobile Forum > android web service ทำ app ดึงข้อมูลจากราคาน้ำมันจาก PTT (ปตท) แล้ว ขึ้นแบบนี้แก้ไขอย่างไรครับ



 

android web service ทำ app ดึงข้อมูลจากราคาน้ำมันจาก PTT (ปตท) แล้ว ขึ้นแบบนี้แก้ไขอย่างไรครับ

 



Topic : 083690



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



error

มีปัญหาตรงผมไม่รู้ว่า จะรับ ข้อความที่ web services ส่งกลับมา แล้วนำมาแปลงเป็น string เพื่อแสดงผลอย่างไรครับ

Code (Java)
package com.example.xxx;

import java.io.IOException;

import android.annotation.SuppressLint;
import android.os.StrictMode;
import org.json.JSONException;
import org.json.JSONObject;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParserException;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {
	private final String NAMESPACE = "http://www.pttplc.com/ptt_webservice/CurrentOilPrice";
    private final String URL = "http://www.pttplc.com/pttinfo.asmx"; // WSDL URL
    private final String SOAP_ACTION = "http://www.pttplc.com/ptt_webservice/CurrentOilPrice";
    private final String METHOD_NAME = "CurrentOilPrice"; // Method on web service
    private TextView txt;
    @SuppressLint("NewApi")
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        
        if (android.os.Build.VERSION.SDK_INT > 9) {
			StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder()
					.permitAll().build();
			StrictMode.setThreadPolicy(policy);
		}
        
        txt =(TextView)findViewById(R.id.txt01);

        SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
        request.addProperty("Language","EN");

        
        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.setOutputSoapObject(request);
        HttpTransportSE androidHttpTransport  = new HttpTransportSE(URL);
        try {
           
			androidHttpTransport.call(SOAP_ACTION, envelope);
			SoapObject result = (SoapObject) envelope.bodyIn;

			if (result != null) {
				txt.setText(result.getProperty(0).toString());
			} else {
				Toast.makeText(getApplicationContext(),
						"Web Service not Response!", Toast.LENGTH_LONG)
						.show();
			}

		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (XmlPullParserException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}




Tag : Mobile, Android







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-09-09 05:29:23 By : glider View : 8919 Reply : 24
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

อันนี้ Error จากไหนครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-09 07:20:02 By : mr.win
 


 

No. 2

Guest


ที่ EMU ครับ มันเปลี่ยนจาก textView ที่ผมตั้งไว้ เป็นข้อความตามนี้เลย

ผมเดาเอาเองว่ารับค่ามาได้แล้ว แต่ยังไม่ครบรึว่าไม่ถูกต้องนี่แหละ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-09 15:53:29 By : glider
 

 

No. 3



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

สงสัยจะต้อง Debug ดูแล้วครับว่า Web Service ปลายทางมันใช้งานจริงได้หรือเปล่าครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-09 16:44:58 By : mr.win
 


 

No. 4

Guest


มีใครพอจะอธิบายได้บ้างไม๊ครับ เกี่ยวกับ http://www.pttplc.com/pttinfo.asmx?WSDL ได้บ้างไม๊ครับ

ว่ามันส่งอะไรกลับมาบ้าง แล้วดู ยังไงขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-09 21:41:26 By : glider
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

เท่าที่ดูจะต้องส่งตัวนี้ไปด้วยครับ

Code
<s:element minOccurs="0" maxOccurs="1" name="Language" type="s:string"/>
<s:element minOccurs="1" maxOccurs="1" name="DD" type="s:short"/>
<s:element minOccurs="1" maxOccurs="1" name="MM" type="s:short"/>
<s:element minOccurs="1" maxOccurs="1" name="YYYY" type="s:short"/>


ว่าแต่เค้าไม่มีตัวอย่างให้ดูเหรอครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-09 21:46:21 By : mr.win
 


 

No. 6



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ไม่มีครับ อีกอย่างผมมือใหม่ด้วย ^^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 10:21:33 By : glider
 


 

No. 7



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ผมไปอ่านมาแล้วครับ คุณจะต้องส่ง Panameters ตามที่ผมบอกครับ

Code
Language = th
DD = 10
MM = 09
YYYY = 2012


ลองดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 10:52:55 By : mr.win
 


 

No. 8



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ส่งไปแล้วครับ error เหมือนเคยครับผม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 13:47:01 By : glider
 


 

No. 9



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Quote:
http://www.pttplc.com/ptt_webservice/GetOilPrice


ทำไม SOAP Action มันใช้ไม่ได้ครับ

ผมไปเจอ Document ครับ มีอีเมล์ด้วยครับ ลองอีเมลืไปถาม Web Master ดูครับ

http://www.pttplc.com/ptt_webservice/PTT_WS_Reference.pdf

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 14:00:32 By : mr.win
 


 

No. 10



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

หรือไม่ลองเปลี่ยน SOAP_ACTION เป็น http://www.pttplc.com/pttinfo.asmx ครับ อยากรู้จริง ๆ ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 14:04:34 By : mr.win
 


 

No. 11



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

โอวได้ Reference อันนี้มาท่าจะมีประโยชน์มากเลยครับ เดี๋ยวผมขอ ลองก่อน ได้ผลอย่างไรจะมารายงานนะครับ

ขอบคุณครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 14:31:46 By : glider
 


 

No. 12



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ถ้าได้รบกวนนำมาโพสไว้ด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 14:40:19 By : mr.win
 


 

No. 13



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

สงสัยได้แล้วมั่ง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 20:03:35 By : mr.win
 


 

No. 14



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ยังเลยครับ ขึ้นเหมือนเดิมอยู่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 21:11:18 By : glider
 


 

No. 15



โพสกระทู้ ( 83 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

package com.example.webservicexmlexample;

import java.io.StringReader;
import java.util.ArrayList;

import org.kobjects.util.Strings;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParser;

import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.util.Xml;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Adapter;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;

public class MainActivity extends Activity {
	private ListView ListXML;
	private ArrayAdapter<String> AdapterXML;
	private ArrayList<String> ListitemXML = new ArrayList<String>();
	
	private Button GetWebServiceXML;
	
	private SoapPrimitive Results = null;
	
	private static String URL = " http://www.pttplc.com/pttinfo.asmx ";
	private static String NAMESPACE = "http://www.pttplc.com/ptt_webservice/";
	private static String METHOD_NAME = "CurrentOilPrice";
	private static String SOAP_ACTION = "http://www.pttplc.com/ptt_webservice/CurrentOilPrice";
	
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        GetWebServiceXML = (Button) findViewById(R.id.getWebServiceXML);
        ListXML= (ListView) findViewById(R.id.listXML);
        
        GetWebServiceXML.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				GetResponseXML();
			}
		});
        
    }
    
    public void GetResponseXML() {
    	Thread s = new Thread() {
    		
    		@Override
    		public void run() {

    			try {
    				
    				SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
    				request.addProperty("Language", "TH");
    				
    				SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
    				envelope.dotNet = true;
    				envelope.setOutputSoapObject(request);
    				
    				HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
					androidHttpTransport.call(SOAP_ACTION, envelope);
					SoapPrimitive resultRequestSOAP = (SoapPrimitive)envelope.getResponse();
					Results = resultRequestSOAP;
					
				} catch (Exception e) {
					// TODO: handle exception
					Results= null;
				} finally {
					if(Results == null) {
						Log.e("WebServiceExample", "Soap object Error");
				
					} else {
						pareser();
					
					}
				}
    			
    		}
    	};
    	s.start();
    }
    
    public void pareser() {
    	
    	ListitemXML.add(Results.toString());
    	Listing();

    }
    
    public void Listing() {
    	Runnable run = new Runnable() {
			
			@Override
			public void run() {
				// TODO Auto-generated method stub
				AdapterXML = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1,
						ListitemXML);
				AdapterXML.notifyDataSetChanged();
				ListXML.setAdapter(AdapterXML);
			}
		};
		this.runOnUiThread(run);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}



ประวัติการแก้ไข
2012-09-10 21:46:07
2012-09-10 21:48:19
2012-09-10 21:48:49
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-10 21:45:39 By : iloveyoukiss
 


 

No. 16



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

เทพมาตอบให้ล่ะครับ ลองดูครับ ถ้าเกิดได้ช่วยตอบด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-11 08:15:32 By : mr.win
 


 

No. 17



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ptt error

ตอนนี้ error ตามนี้ครับ code ของคุณ Andrew
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-12 22:51:17 By : glider
 


 

No. 18



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ตอบความคิดเห็นที่ : 17 เขียนโดย : glider เมื่อวันที่ 2012-09-12 22:51:17
รายละเอียดของการตอบ ::
คุณ Copy ตัว Class ของ ksoap ไปไว้ในโฟเดอร์ lib แล้วใช่หรือเปล่าครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-13 08:57:57 By : mr.win
 


 

No. 19



โพสกระทู้ ( 7 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

test
ตอนนี้ได้ละครับ
ปัญหาต่อไปคือ จึงดึงให้ออกมาแสดงผลเฉพาะจุดอย่างไร

เช่น textView1 ให้แสดง น้ำมัน Blue Diesel

textView2 ให้แสดงราคาน้ำมันของ Blue Diesel

ประมาณนี้นะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-14 06:55:03 By : glider
 


 

No. 20



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ใช้พวก ListView กับ BaseAdapter ครับ ในบทความมีเยอะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-14 21:36:35 By : mr.win
 


 

No. 21



โพสกระทู้ ( 83 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ป่าวครับพี่วิน มันเป็นบทเรียนที่ผมบังเอิญทำพอดีเลย เอามาลงเพราะมันเหมือนกันครับ 55555 จริงๆ แล้วผมยัง มึนๆ อยู่เลย

พี่วินช่วย อธิบายโค๊ดนี้ให้ผมฟังหน่อยได้ไหมครับ

if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}


รบกวนขอละเอียดๆ นะครับ รบกวนด้วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-16 20:50:16 By : iloveyoukiss
 


 

No. 22



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ตัวนี้สามารถเอาออกได้ครับ ในบาง Version ไม่จำเป้นต้องใช้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-16 21:38:55 By : mr.win
 


 

No. 23



โพสกระทู้ ( 83 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

อ๋อครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-16 21:56:08 By : iloveyoukiss
 


 

No. 24



โพสกระทู้ ( 83 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

แต่ถึงแบบนั้นก็อยากรู้อ่ะครับ ช่วยผมหน่อยนะครับ บ้างที่ผมเขียนให้มันติดต่อกับ web service ทำเท่าไหร่ก็ไม่ติด พอใส่ statement ชุดนี้เข้าไปแล้วมันดันใช้ได้อ่ะครับ โดยเฉพาะในตัวอย่างที่พีวินทำไว้ อ่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-16 21:57:49 By : iloveyoukiss
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : android web service ทำ app ดึงข้อมูลจากราคาน้ำมันจาก PTT (ปตท) แล้ว ขึ้นแบบนี้แก้ไขอย่างไรครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม , รับทำบัญชี , โรงงานผลิตครีม , สำนักงานบัญชี , รับจดทะเบียนบริษัท , Pangpond , รถมือสอง

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2020 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่