MapActivity无法获得连接工厂客户端

时间:2012-06-09 10:32:50

标签: android google-maps google-maps-mobile

我一直在寻找关于这个问题的谷歌,但我还没有解决。显示地图,但我找到了我想要的地方,仍然给我同样的失败:

  

06-09 12:10:57.231:I / MapActivity(1532):处理网络变化   通知:已连接06-09 12:10:57.231:   W / IdleConnectionHandler(1532):删除从不的连接   存在! 06-09 12:11:04.829:W / KeyCharacterMap(1532):无法打开   keycharmap file 06-09 12:11:04.829:W / KeyCharacterMap(1532):错误   loading keycharmap file 06-09 12:11:04.829:W / KeyCharacterMap(1532):   使用默认键盘映射06-09 12:11:57.080:I / MapActivity(1785):处理   网络变更通知:已连接06-09 12:11:57.080:   E / MapActivity(1785):无法获得连接工厂客户端

我不理解,因为我已经按照所有步骤生成api密钥,我的Activity从MapActivity扩展,并且我添加了我的android最明确的许可和库。

的Manifest.xml

<?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.XXX.XXX"
        android:versionCode="1"
        android:versionName="1.0" >

        <uses-sdk android:minSdkVersion="10" />
        <uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>


        <application
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name" >
            <uses-library android:name="com.google.android.maps"/>                  
            <activity
                android:name=".MainActivity"
                android:label="@string/app_name" 
                android:theme="@android:style/Theme.NoTitleBar">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>    
            <activity android:name=".Activities.Gmaps"/>                
        </application>
    </manifest>

Gmaps活动

import android.os.Bundle;

import com.google.android.maps.GeoPoint;
import com.google.android.maps.MapActivity;
import com.google.android.maps.MapController;
import com.google.android.maps.MapView;

public class Gmaps extends MapActivity{

    private MapView mapa = null;
    private MapController control = null;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.gmaps);                        

        mapa = (MapView)findViewById(R.id.mapa);
        mapa.setBuiltInZoomControls(true);

        Double latitud = 40.4166909;
        Double longitud = -3.7003454;

        GeoPoint loc = new GeoPoint(latitud.intValue(), longitud.intValue());

        control = mapa.getController();            
        control.setCenter(loc);
        control.setZoom(7);
    }

    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }

}

gmaps.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <com.google.android.maps.MapView
        android:id="@+id/mapa"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:apiKey="0htJ1gM0WymyYYokI3eUunfuJ2-XXXXXXXXX" 
        android:clickable="true"/>

</RelativeLayout>

抱歉我的英文! jeje :))

1 个答案:

答案 0 :(得分:1)

使用密钥库为您的应用程序签名,并使用此密钥库为您的应用程序生成apk。然后在您的设备上安装它。这将解决您的问题。您使用的地图api密钥必须仅使用此密钥库生成。