gpt4 book ai didi

java - 连接到 Android 的 php 文件

转载 作者:行者123 更新时间:2023-12-02 12:36:15 24 4
gpt4 key购买 nike

您尝试联系 php 文件但我无法获取所需的信息

链接 PHP 文件:http://aristo.eb2a.com/hello.php

我的应用程序中的结果:

enter image description here

代码:

public class MainActivity extends AppCompatActivity {
TextView msgHello;
Button getData;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

msgHello = (TextView) findViewById(R.id.txtHelloMsg);
getData = (Button) findViewById(R.id.btngetdata);


getData.setOnClickListener(new View.OnClickListener() {



@Override
public void onClick(View view) {

Runnable runnable = new Runnable() {
@Override
public void run() {
try {
URL urlMsgHello = new URL("http://aristo.eb2a.com/hello.php");
HttpURLConnection connection = (HttpURLConnection) urlMsgHello.openConnection();

InputStreamReader stream = new InputStreamReader(connection.getInputStream());
BufferedReader buf = new BufferedReader(stream);
final String Hello = buf.readLine();

runOnUiThread(new Runnable() {
@Override
public void run() {
msgHello.setText(Hello);
}
});


} catch (IOException e) {
e.printStackTrace();
}
}
};
Thread thread = new Thread(runnable);
thread.start();


}
});



}
}

它可以正常工作,但不会返回所需的值

我该如何解决这个问题?

最佳答案

您使用过 JSON(Javascript 对象表示法)吗?

实际上你所做的是打开一个连接到网站并打印其结果这是 100% 正确的。

But what you are expecting is "Hello" to be printed Why? because What you see on browser is parsed by browsers and displayed as UI

在现实世界的应用程序中,人们使用 JSON 这种语言,它填补了许多语言之间的通信空白。Json 很简单,因为没有什么只是行的问题。

将您的 PHP 脚本更改为

header('Content-type: application/json');
$data = ['Your data here']
echo json_encode($array);

并且还要更改 android java 代码。

JSON

https://www.tutorialspoint.com/json/

JSON解析器

https://developer.android.com/reference/android/util/JsonReader.html

Php Json

https://www.w3schools.com/js/js_json_php.asp

关于java - 连接到 Android 的 php 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45119989/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com