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

Registered : 109,037

HOME > Mobile > Mobile Forum > [มือใหม่][แก้ไขได้แล้วครับ]สอบถามเรื่อง HttpGet รันแล้วไม่แสดงค่าออกทาง TextView และพอรันใหม่โปรแกรมปิดการทำงาน



 

[มือใหม่][แก้ไขได้แล้วครับ]สอบถามเรื่อง HttpGet รันแล้วไม่แสดงค่าออกทาง TextView และพอรันใหม่โปรแกรมปิดการทำงาน

 



Topic : 123113



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



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




จากบทความตัวอย่าง

https://www.thaicreate.com/mobile/android-httpget-httppost.html

ได้ลองทำตามตัวอย่าง โดยใช้ XAMPP แต่ข้อมูลในไฟล์ php ไม่แสดงใน Textview ครับ ตามตัวอย่าง
บางครั้งก็ปิดการทำงาน
โดยไฟล์ php ผมเก็บไว้ใน C:\xampp\htdocs\android\getHttpGet.php
กำหนด Permission ใน AndroidManifes แล้วครับ

MainActivity
package com.example.prasitz.testmysql;

import android.os.StrictMode;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.StatusLine;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final TextView result = (TextView)findViewById(R.id.txt1);
        Button btn1 = (Button)findViewById(R.id.button);
        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                String url = "http://10.0.2.2/android/getHttpGet.php";
                String result1 = getHttpGet(url);
                result.setText(result1);

            }
        });
    }
    public String getHttpGet(String url){
        StringBuilder str = new StringBuilder();
        HttpClient httpClient = new DefaultHttpClient();
        HttpGet httpGet = new HttpGet(url);
        try {
            HttpResponse response = httpClient.execute(httpGet);
            StatusLine statusLine = response.getStatusLine();
            int statusCode = statusLine.getStatusCode();
            if(statusCode == 200){
                HttpEntity entity = response.getEntity();
                InputStream content = entity.getContent();
                BufferedReader reader = new BufferedReader(new InputStreamReader(content));
                String line;
                while ((line = reader.readLine()) != null){
                    str.append(line);
                }
            }else {
                Log.e("Log","Fail Download...");
            }

        }catch (ClientProtocolException e){
            e.printStackTrace();
        }catch (IOException e){
            e.printStackTrace();
        }
        return str.toString();
    }

}


activity_main.xml
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.prasitz.testmysql.MainActivity">

    <!-- TODO: Update blank fragment layout -->

    <TableRow
        android:layout_width="match_parent"
        android:layout_height="match_parent">

    </TableRow>

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Get"
            android:id="@+id/button" />

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Result"
                android:id="@+id/txt1"
                android:layout_column="11" />
        </TableRow>
    </TableLayout>
</TableLayout>


** แก้ไขได้แล้ว ปล.ผมใช้ Emulator ของ Genymotion โดยให้กำหนด URL Server เป็น http://10.0.3.2/ **



Tag : Mobile, Android, Mobile









ประวัติการแก้ไข
2016-05-30 15:26:27
2016-05-30 15:32:58
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2016-05-29 22:51:05 By : prasit210 View : 1010 Reply : 2
 

 

No. 1



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

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

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

ลองใช้พวก Android HTTP Lib ดูครับ ง่ายมาก

Code







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-05-30 21:03:31 By : mr.win
 


 

No. 2



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



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

แนะนำรบกวน log ค่าตามภาพให้ดูหน่อยครับ เพราะจะรุ้ปัญหาที่แท้จริงครับ

log error bubug
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2016-06-09 13:08:16 By : heloman
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : [มือใหม่][แก้ไขได้แล้วครับ]สอบถามเรื่อง HttpGet รันแล้วไม่แสดงค่าออกทาง TextView และพอรันใหม่โปรแกรมปิดการทำงาน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

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