启用Android应用程序连接到互联网


Enable Android App to Connect to the Internet

我使用Phohegap创建了一个简单的应用程序,使用以下index.html:从远程数据库中检索一些记录

<!doctype html>
<html><head>
<meta charset="utf-8">
<title>Untitled Document</title>
<link rel="stylesheet" type="text/css" href="jquery.mobile-1.4.4.min.css">
<script src="jquery-1.11.1.min.js"></script>
<script src="jquery.mobile-1.4.4.min.js"></script>
<script charset="utf&minus;8" type="text/javascript">
function connect(e)
{
    var term= {button:e};
    $.ajax({
        url:'http://dubaisinan.host22.com/reply.php',
        type:'POST',
        data:term,
        dataType:'json',
        error:function(jqXHR,text_status,strError){
            alert("No Connection");},
        timeout:60000,
        success:function(data){
            $("#result").html("");
                for(var i in data){
                    $("#result").append("<li>"+data[i]+"</li>");
                }
            }
        });     
} 
</script>
</head>
<body>
<center><b>My Students</b></center>
<center><input onclick="connect(this.value)" type="button" value="showStudents" /></center>
<center><b>Results</b></center>
<ul data-role="listview" id="result"></ul>
</body>
</html>

和下面的reply.php:

<?php
    header('Content-Type: application/json');
    $link = mysql_connect('host_name', 'user-name', 'password');
    if (!$link) 
    {
        $myStudents[] = "No";
        die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("a2808249_db1",$link);  
    $result = mysql_query("SELECT * FROM Students",$link);  
    while ($myrow = mysql_fetch_row($result)) 
    {
        $myStudents[] = $myrow[1];
    }
    print json_encode($myStudents);
 ?> 

它在我的笔记本电脑上运行良好,但当我使用Phonegap构建它并在Note 3设备上下载apk文件时,我会收到消息"No Connection"。该应用程序似乎无法连接到Internet。该设备已连接到Internet。

请帮忙吗?思南

添加这些行

<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">

您还说要检索,所以这应该是一个GET调用,而不是POST。

同时使用<!DOCTYPE html>(正确编码标准)

编辑:示例GET调用

$.ajax({
                url: "http://abcd.com",
                headers: {
                    "X-API-KEY": "2b9asdedqedqxdqd7956e6f7a",
                    "Content-Type": "application/json"
                },
                type: "GET",
                data: fromDatan,
                dataType: "JSON",
                success: function(fromData, status, jqXHR) {
                    alert(JSON.stringify(fromData));
                },
                error: function(jqXHR, status) {
                    alert(JSON.stringify(jqXHR));
                }
                });

EDIT:这是一个可以POST到测试服务器的示例代码

<!DOCTYPE html>
<html>
<head>
    <script src="http://code.jquery.com/jquery-latest.min.js"></script>
    <script language="javascript" type="text/javascript">
        <!--
        function greeter() {
          var accx = 5;
          var accy = 6;
          var accz = 7;

                var output = [];
                output[0] = {
                        name: "Accel_X",
                        value: accx.toString(), // retrieve x
                    };
                    output[1] = {
                        name: "Accel_Y",
                        value: accy.toString(), // retrieve y
                    };
                    output[2] = {
                        name: "Accel_Z",
                        value: accz.toString() // retrieve z
                    };

                var fromData = {};
                fromData.output = output;
                var fromDatan = JSON.stringify(fromData);
                alert(fromDatan);

                jQuery.ajax({
                    url: "http://posttestserver.com/post.php",
                    type: "POST",
                    data: fromDatan,
                    dataType: "JSON",
                    success: function(fromDatan, status, jqXHR) {
                        alert(JSON.stringify(fromData));
                    },
                    error: function(jqXHR, status) {
                        alert(JSON.stringify(jqXHR));
                    }
                    /*
                    error:function(jqXHR,text_status,strError){
            alert("No Connection");},
        timeout:60000,
        success:function(data){
            $("#result").html("");
                for(var i in data){
                    $("#result").append("<li>"+data[i]+"</li>");
                }
            }*/
                });
                return false;
            }
            //-->
    </script>
</head>
<body>
    <button onclick="greeter();">Click me</button>
</body>
</html>

我试过使用你的网址,但不起作用。但是,如果我能

,我会让你知道