如何在Android应用程序中使用geonames Web服务

时间:2014-06-02 09:54:23

标签: android web-services geonames

我想在我的Android应用程序中使用geonames Web服务来进行学习。所以我按照this sample

但结果我得到了这个meaasge:

  

{“status”:{“message”:“请为每次通话添加用户名   geonames能够识别调用应用程序并计算   学分使用。“,”“值”:10}}

然后我发现我必须在GeoNames网站注册。所以我注册但没有任何反应。最后一步:如何在我的代码中显示此注册?

2 个答案:

答案 0 :(得分:1)

当您转到激活链接时,页面中有一个“启用”链接,位于错误图标和上方菜单附近。单击它以启用您的帐户。

答案 1 :(得分:0)

你必须传递用户名..

$(document).ready(function() {
    $( "#city" ).autocomplete({
        source: function( request, response ) {
            $.ajax({
                url: "http://ws.geonames.org/searchJSON",
                dataType: "jsonp",
                data: {
                    style: "medium",
                    maxRows: 10,
                    featureClass: "P",
                    continentCode: ["NA","SA","EU"],
                    q: request.term,
                    username: "demo"
                },
                success: function( data ) {
                    if( typeof(data.status) != 'undefined' ){ //An error occured
                        var errorObject = data;
                        //Now we have access to errorObject.status, errorObject.status.message and so on
                        //Let's do something with the error object
                        return; //Stop parsing function
                    } 
                    response( $.map( data.geonames, function( item ) {
                        return {
                            label: item.name + (item.adminName1 ? ", " + item.adminName1 : "") + ", " + item.countryCode,
                            value: item.name + (item.adminName1 ? ", " + item.adminName1 : "") + ", " + item.countryCode,
                            lat: item.lat,
                            lng: item.lng
                        }
                    }));
                },
            });
        },
        //Start Search after user types...
        minLength: 2,
        select: function( event, ui ) {
            // Set Location for map
            $( '#lat' ).val( ui.item.lat );
            $( '#lng' ).val( ui.item.lng );
        },
        close: function() {
            //UI plugin not removing loading gif, lets force it
            $( '#city' ).removeClass( "ui-autocomplete-loading" );
        },
    });
  });