gpt4 book ai didi

php - 更好的是,在 android 中循环读取 php 或在 php 中循环读取数据库?

转载 作者:搜寻专家 更新时间:2023-10-30 20:50:19 24 4
gpt4 key购买 nike

我正在 android 中制作一个应用程序,它必须不断读取我服务器中托管的数据库,我的问题是,最好在 android 中进行循环,不断读取 php 文档或只读取一次但 php 文档进行循环从数据库中获取信息?

在 android studio 中,我只是做一个 sleep 循环,然后阅读 php 文档。我没有代码,因为我还没有制作它,但这里是连接 php 的代码,想象一下它在一个循环中:

    StringRequest conexion = new StringRequest(Request.Method.POST,
Constantes.URL_NombreIcono,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if(response.charAt(response.length() - 1) == '1'){

}
else {
NombreGrupo.setText(response);
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast("No se ha podido conectarse con la base de datos", "l");
}
});
RequestQueue requ = Volley.newRequestQueue(this);
requ.add(conexion);

本例中的 php 代码是这样的:

<?php 
$con = mysqli_connect('localhost','root','', 'JNDatabase');
if (!$con) {
echo "|Error";
}
else{
$query = "SELECT * FROM Log ORDER BY id DESC LIMIT 1";
$resultado = $con->query($query);

if (!$resultado){
echo "|Error";
}
else {
$row = $resultado->fetch_assoc();
if($row["Realizada"] == 1){
echo $row["Accion"]."|".$row["id"];
}
}
}

?>

另一种情况,是读取了一次php文件,但是php文件造成了循环,我在php中有循环的代码:

<?php

ini_set('max_execution_time', 0);

while (true) {
$con = mysqli_connect('localhost','root','', 'JNDatabase');
if (!$con) {
echo "|Error";
}
else{
$query = "SELECT * FROM Log ORDER BY id DESC LIMIT 1";
$resultado = $con->query($query);

if (!$resultado){
echo "|Error";
}
else {
$row = $resultado->fetch_assoc();
if($row["Realizada"] == 1){
echo $row["Accion"]."|".$row["id"];
}
}
}
ob_flush();flush();sleep(1);
}

?>

你认为哪个更好,因为这是一个 Android 应用程序,我必须注意电池。

PDT:我知道存在像 Firebase 这样的服务,但我想用我自己的服务器来做这件事,你知道的,尽量避免将信息提供给其他公司

最佳答案

在 Android 中,这取决于您将如何处理从数据库接收到的数据。但绝对不应该在 PHP 中进行循环。 Android 设备离线时会做什么? PHP 应该从数据库(可能是缓存)获取数据,并根据请求将其传递给 Android 设备。

如果您只想在 UI 中显示来自数据库的数据,您可以使用任何循环或 Handler.postDelayed() API。但是,如果您在应用程序关闭或暂停时暂停您的工作,那就太好了。

或者,如果您想在后台做一些工作,例如在 SQLite 中存储数据,您可以使用 AlarmManager 或 JobScheduler API。 There is a list of available tools .

关于php - 更好的是,在 android 中循环读取 php 或在 php 中循环读取数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46148468/

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