php - 在后台多次从 android 执行 .php 文件的最佳方法是什么?

标签 php android mysql android-asynctask

在后台从 android 执行 .php 文件的最佳方式是什么? 我需要它来刷新 mysql 数据库中的用户 Activity 时间。 因此,如果用户单击按钮,则应在数据库中使用他最后的 Activity 数据时间完成一个新条目。

我应该像这样使用异步任务吗?

private class UpdateUser extends AsyncTask<String, String, String> {


    @Override
    protected void onPreExecute() {
        super.onPreExecute();

        //I don't like to have a dialog. This hinds the user while he is using the app

    }

    /**
     * Creating product
     * */
    protected String doInBackground(String... args) {
        jsonParser = new JSONParser();
        String BENUTZER_NAME = actual_tUsername;

        // Building Parameters
        List<NameValuePair> params = new ArrayList<NameValuePair>();
        params.add(new BasicNameValuePair("BENUTZER_NAME", BENUTZER_NAME));

        //Call the php file defined as string which is updating the users last online datetime
        JSONObject json = jsonParser.makeHttpRequest(url_update_activetime,
                "POST", params);

        if(json == null){
            Log.v("NULL", "NULL");
        }


        return null;
    }

    /**
     * After completing background task Dismiss the progress dialog
     * **/
    protected void onPostExecute(String file_url) {

    }

}

或者我应该更好地使用runOnUiThread? 或者有更好的方法来解决这个问题吗?

提前致谢!

最佳答案

永远不要在 UI 线程上进行网络调用(我相信从 android 4.0 开始,它会抛出错误)。始终在单独的线程中执行此操作(AsyncTask 可以工作)。

关于php - 在后台多次从 android 执行 .php 文件的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19052966/

相关文章:

php - LIMIT 在日期时间比较中不起作用

php - 显示来自 mysql 的搜索结果

php - prod 模式下的 ORO CRM 试图加载错误的 URL,但在 dev 模式下一切正常

android - 如何将 ImageView 角度旋转重置为默认值?

mysql 检查数字是否在逗号分隔的列表中

php - 如何在单个查询中获取具有不同 user_id 的计数、类型、日期

php - 不间断的cronjob

php - 我如何检查包含 ip 地址(inet_aton)的 php 变量($stat_ip)是否位于两个 ip(inet_aton 格式)的范围内

java - Android - Facebook 是否打算访问某个 Facebook 页面?

java - Android 应用程序不会将数据存储在数据库中