Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 未捕获引用错误:未定义google:41_Android_Google Maps Api 3_Cordova - Fatal编程技术网

Android 未捕获引用错误:未定义google:41

Android 未捕获引用错误:未定义google:41,android,google-maps-api-3,cordova,Android,Google Maps Api 3,Cordova,刚接触phonegap,第一次尝试时遇到问题。这可以在线工作,无法在模拟器上启动地理定位(或其他),并在上传到我的设备时给我“未捕获引用错误:google未定义:41”错误 我能想到的唯一一件事是它没有加载MapJS文件,或者某些顺序没有正确构建。我看到的所有示例和项目都可以方便地跳过实际的设备测试 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>asd</t

刚接触phonegap,第一次尝试时遇到问题。这可以在线工作,无法在模拟器上启动地理定位(或其他),并在上传到我的设备时给我“未捕获引用错误:google未定义:41”错误

我能想到的唯一一件事是它没有加载MapJS文件,或者某些顺序没有正确构建。我看到的所有示例和项目都可以方便地跳过实际的设备测试

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>asd</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link href="css/codiqa.ext.min.css" rel="stylesheet">
<link href="css/jquery.mobile-1.3.1.min.css" rel="stylesheet">  
<script src="js/jquery-1.9.1.min.js"></script>
<script src="js/jquery.mobile-1.3.1.min.js"></script>
<script src="js/codiqa.ext.min.js"></script>
<script src="cordova.js"></script>
<script type="text/javascript" 
    src="https://maps.googleapis.com/maps/api/js?key=MYKEY0&sensor=true">
    </script>  
<style>
    html{height:100%;}
    body{height:100%; margin:0; padding:0;}
    #map-canvas{height:50%;}
    #content {
        padding:0;
        position:absolute !important;
        top:40px !important;
        right:0;
        bottom:40px !important;
        left:0 !important;
        z-index:10;
    }
  #bottom {margin-top:65%;}
</style>
<script type="text/javascript">
    $(document).on('pageinit', '#page1', function(e,data) { getPos(); });
    var lat;
    var lng;

    function getPos(){ navigator.geolocation.getCurrentPosition(onSuccess, onError); }

    function initializeMap() {
        console.log('init: '+lat+':'+lng);
        var myLatlng = new google.maps.LatLng(lat,lng);
        var mapOptions = {
            zoom:8,
            center:myLatlng,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        }
        var map = new google.maps.Map(document.getElementById('map-canvas'),mapOptions);
    }

    function onSuccess(position){
        lat = position.coords.latitude;
        lng = position.coords.longitude;
        console.log(lat+":"+lng);
        initializeMap();
    }

    function onError(error){ 
        alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n');
    }
</script>
</head>
<body>
<div id="page1" data-role="page" data-theme="a">
    <div data-theme="a" data-role="header"> 
        <h3>MapIt</h3>
        <a data-rel="back">Back</a>
    </div>     
    <div data-role="content" id="content">   
        <div id="map-canvas"></div> 
    </div>
    <div id="bottom">
        <a href="#" class="add-markers" data-role="button" data-theme="a">AddMarkers</a>       
        <div data-controltype="textinput">
            <input name="" id="textinput2" placeholder="City and state" value="" type="text">
        </div>
        <input type="submit" value="Submit">
        <input type="submit" value="My Location">
    </div>     
</div>
</body>
</html>
提前谢谢

****UPDATE SOLVED****
这是白名单 其中有两个需要更改为此

  • 在assets/www/config.xml中
  • 在res/xml/config.xml中
  • 我更改了index.html文件旁边的一个,不知道另一个在res/xml中。在index.html文件上方有一个res文件夹,我在其中查找时没有看到xml文件夹


    希望这些信息对其他人有所帮助

    这是白名单,其中有两个需要更改为此

    <access origin="*" />
    
    
    
    1.in/assets/www/config.xml

    2.in/res/xml/config.xml

    我更改了index.html文件旁边的一个,不知道另一个在res/xml中。在index.html文件上方有一个res文件夹,我在其中查找时没有看到xml文件夹


    希望这些信息对其他人有所帮助

    您的config.xml中是否有?是的,我检查了Chrome和FF中的代码,它可以正常工作。你的钥匙呢?您是否已经为android启用了它?我使用了
    google.maps.event.adddomstener(窗口'load',getPos)用于初始化,而不是脚本的第一行。是的,密钥已全部设置并激活,我只是在这里更改了它。我的代码也可以在浏览器中使用。只是不在eclipse的模拟器中,也不在我的设备上。(星系s2)。我甚至尝试了你的代码,并得到了这个错误:UncaughtTypeError:无法读取未定义的属性“maps”:31当你说它在浏览器中工作时,你在emulator和s2中使用默认浏览器进行测试?(因为这是phonegap使用的)
    
    <access origin="*" />