我按照两个教程创建了一个显示谷歌地图的Android应用程序。活动启动但没有可见的地图。可以看到侧面的变焦按钮。如何查看地图?
The Tutorial I used for the project structure
The Tutorial I used for the activity code
这是我的清单:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.application.ridingo"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<permission
android:name="com.application.ridingo.permission.MAPS_RECEIVE"
android:protectionLevel="signature" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true" />
<uses-permission android:name="com.application.ridingo.permission.MAPS_RECEIVE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />
<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.application.ridingo.Select_Route"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="ASDfrughiuniGDWUdhiWHdbi" />
</application>
</manifest>
答案 0 :(得分:1)
您描述的问题通常发生在您定义Google地图权限的方式(通过快速查看清单文件看起来没问题)或Google API中允许的API配置错误时控制台。
看看我写的关于如何配置Google Maps API V2的指南,并确保您完成所有步骤:
确保在控制台中打开Google Maps V2 for Android,而不是在网络上打开。在你发布的清单文件中看起来很奇怪的另一件事就是你的钥匙(它看起来太短了 - 你是否有意切割它)如果你不确定你生产钥匙的方式我会建议你仔细阅读本指南:
答案 1 :(得分:0)
尝试这些步骤。它对我有用。 用这个改变你的主要布局。
<RelativeLayout 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"
tools:context=".MainActivity" >
<fragment
android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.MapFragment" />
</RelativeLayout>
将您的活动更改为片段活动并遵循此代码
public class YourActivity extends FragmentActivity
//implements GoogleMap.InfoWindowAdapter
{
private GoogleMap googleMap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map);
googleMap = mapFragment.getMap();
googleMap.setMyLocationEnabled(true);
}
}
检查你的项目属性文件google play library reference必须是他们的
target=android-10
android.library.reference.1=../google-play-services_lib
如果库引用不是从
导入库项目yoursdkPath \ SDK \额外\谷歌\ google_play_services 导入此库后。将此库配置到项目中