大家好,我一直在尝试遵循Google在其开发人员网站上使用Android中的Google Maps的教程。不用说,我无法使事情正常运行,并且它有多个错误。因此,我从Youtube切换到一个,这也给我带来了错误。我要做的就是绘制 map 。我无法使用的错误发布在下面。我真的希望你们能给我一些提示。任何帮助深表感谢。
人们还注意到,每次遇到问题时,我都会用Google搜索并尝试多次“修复”。因此,这将导致代码中的任何不一致。
错误:
Gradle: Execution failed for task ':GoogleMapsDemoV2:compileDebug'.
Compilation failed; see the compiler error output for details.
C:\ Users \ Josebz \ AndroidStudioProjects \ GoogleMapsDemoV2Project \ GoogleMapsDemoV2 \ src \ main \ java \ com \ example \ googlemapsdemov2 \ MainActivity.java
无论如何,这是我所有的代码...
主要 Activitypackage com.example.googlemapsdemov2; import android.support.v7.app.ActionBarActivity; import android.support.v7.app.ActionBar; import android.support.v4.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.os.Build; public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if (savedInstanceState == null) { getSupportFragmentManager().beginTransaction() .add(R.id.container, new PlaceholderFragment()) .commit(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. switch (item.getItemId()) { case R.id.action_settings: return true; } return super.onOptionsItemSelected(item); } /** * A placeholder fragment containing a simple view. */ public static class PlaceholderFragment extends Fragment { public PlaceholderFragment() { } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.fragment_main, container, false); return rootView; } } }
Android list<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.googlemapsdemov2" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" /> <permission android:name="com.example.googlemapsdemov2.permission.MAPS_RECEIVE" android:protectionLevel="signature"/> <uses-permission android:name="com.example.googlemapsdemov2.permission.MAPS_RECEIVE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES"/> <!-- The following two permissions are not required to use Google Maps Android API v2, but are recommended. --> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> <uses-feature android:glEsVersion="0x00020000" android:required="true"/> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="AIzaSyAL5Xq8scMIHnWXITSOLN9QipVkri4A-lI"/> <activity android:name="com.example.googlemapsdemov2.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
activity_main.xml<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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/header" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> <fragment android:id="@+id/map" android:name="com.google.android.gms.maps.MapFragment" android:layout_below="@+id/header" android:layout_width="match_parent" android:layout_height="match_parent" /> </RelativeLayout>
build.gradlebuildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.6.+' } } apply plugin: 'android' repositories { mavenCentral() } android { compileSdkVersion 19 buildToolsVersion "19.0.0" defaultConfig { minSdkVersion 14 targetSdkVersion 19 } } dependencies { compile 'com.android.support:appcompat-v7:+' compile 'com.android.support:support-v13:13.0.+' compile 'com.google.android.gms:play-services:3.2.25' }
最佳答案
在AndroidManifest.xml中的MAP_KEY行之前添加以下两行
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
关于android - Android教程上的Google Maps问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21225881/