안녕하세요.
일단 제 소개를 하자면 학생이고요.
와... 아무리 구글링이든 뭐든 해봐도 안되고 미치겠습니다.
구글맵 API 인증키 v2로 하고 있거든요.
일단 인증키 SHA1을 이용해서 구글에서 키 받았고요.
그걸 사용해서 다 소스 만들고 했는데..
에뮬이랑 갤S3 디바이스에서 다 로그캣에서 [Couldn't get connection factory client] 이 에러 하나만 뜨고,
바둑판 모양만 뜹니다. (지도는 안나오고요)
와 미치겠습니다. 소스상으로는 에러표시나 문제는 없습니다.
==================================================================================
일단 매니페스트
===================================================================================
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.jinpmapview"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.jinpmapview.JinMapView"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<uses-library android:name="com.google.android.maps"/>
</application>
</manifest>
======================================================================
xml
========================================================================
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<com.google.android.maps.MapView
android:id="@+id/mapview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:apiKey="AIzaSyBJd4Qdm1ZMjD9vyz1djxLgtbmuP1jtsT4"
android:clickable="true"
/>
</LinearLayout>
=============================================================================
java
==================================================================================
package com.example.jinpmapview;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
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 JinMapView extends MapActivity {
MapView mMap;
MapController mControl;
protected boolean isRouteDisplayed(){
return false;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map_view);
mMap = (MapView)findViewById(R.id.mapview);
mControl = mMap.getController();
mControl.setZoom(16);
mMap.setBuiltInZoomControls(true);
GeoPoint pt = new GeoPoint(37881311, 127729968);
mControl.setCenter(pt);
}
public boolean onCreateOptionsMenu(Menu menu){
super.onCreateOptionsMenu(menu);
menu.add(0,1,0,"지도");
menu.add(0,2,0,"위성");
menu.add(0,3,0,"거리");
menu.add(0,4,0,"교통");
menu.add(0,5,0,"춘천시청");
menu.add(0,6,0,"강원도청");
return true;
}
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()){
case 1:
mMap.setSatellite(false);
return true;
case 2:
mMap.setSatellite(true);
return true;
case 3:
mMap.setStreetView(true);
return true;
case 4:
mMap.setTraffic(true);
return true;
case 5:
mControl.animateTo(new GeoPoint(37881311, 127729968));
return true;
case 6:
mControl.animateTo(new GeoPoint(37885269, 127729592));
return true;
}
return false;
}
}
------------------------ 글 수정 사항 -----------------------------
프로젝트를 첨부해 놨습니다 ㅠㅜ
확인해보시고 도와주세요.
api key가 안 맞나본데요, 프로젝트 서명 시 사용된 keystore에 맞는 값으로 등록해서 api key를 얻어야 합니다. 관련 에러로 구글링해보면 많이 나올것 같은데요