谷歌地图API Android – 错误膨胀类片段

我知道StackOverFlow上有很多关于这个问题的主题,但是没有一个可以帮助我。 我正在做一个非常基本的应用程序,我只想显示一个MAP。

  • 我已将google-play-services_lib导入到我的主项目中。
  • 我已经生成了我的API密钥。

这是我的AndroidManifest.xml文件:

                        

这是我的Layout XML文件:

  

这是我的代码:

 public class OpenVenuesMapActivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_open_venues_map); } } 

我正在我的索尼XPeria J上运行该应用程序。我得到Loc Cat生成的以下错误:

 05-01 18:51:48.544: E/AndroidRuntime(10794): FATAL EXCEPTION: main 05-01 18:51:48.544: E/AndroidRuntime(10794): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.linkme2night/com.linkme2night.view.openvenuesmap.OpenVenuesMapActivity}: android.view.InflateException: Binary XML file line #1: Error inflating class fragment 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2065) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2090) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.ActivityThread.access$600(ActivityThread.java:136) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1201) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.os.Handler.dispatchMessage(Handler.java:99) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.os.Looper.loop(Looper.java:137) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.ActivityThread.main(ActivityThread.java:4802) 05-01 18:51:48.544: E/AndroidRuntime(10794): at java.lang.reflect.Method.invokeNative(Native Method) 05-01 18:51:48.544: E/AndroidRuntime(10794): at java.lang.reflect.Method.invoke(Method.java:511) 05-01 18:51:48.544: E/AndroidRuntime(10794): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:813) 05-01 18:51:48.544: E/AndroidRuntime(10794): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:580) 05-01 18:51:48.544: E/AndroidRuntime(10794): at dalvik.system.NativeStart.main(Native Method) 05-01 18:51:48.544: E/AndroidRuntime(10794): Caused by: android.view.InflateException: Binary XML file line #1: Error inflating class fragment 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.view.LayoutInflater.inflate(LayoutInflater.java:466) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 05-01 18:51:48.544: E/AndroidRuntime(10794): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:256) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.Activity.setContentView(Activity.java:1869) 05-01 18:51:48.544: E/AndroidRuntime(10794): at com.linkme2night.view.openvenuesmap.OpenVenuesMapActivity.onCreate(OpenVenuesMapActivity.java:14) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.Activity.performCreate(Activity.java:5013) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2029) 05-01 18:51:48.544: E/AndroidRuntime(10794): ... 11 more 05-01 18:51:48.544: E/AndroidRuntime(10794): Caused by: android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.google.android.gms.maps.SupportMapFragment : make sure class name exists, is public, and has an empty constructor that is public 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.support.v4.app.Fragment.instantiate(Fragment.java:401) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.support.v4.app.Fragment.instantiate(Fragment.java:369) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.support.v4.app.FragmentActivity.onCreateView(FragmentActivity.java:272) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:676) 05-01 18:51:48.544: E/AndroidRuntime(10794): ... 20 more 05-01 18:51:48.544: E/AndroidRuntime(10794): Caused by: java.lang.ClassNotFoundException: com.google.android.gms.maps.SupportMapFragment 05-01 18:51:48.544: E/AndroidRuntime(10794): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) 05-01 18:51:48.544: E/AndroidRuntime(10794): at java.lang.ClassLoader.loadClass(ClassLoader.java:501) 05-01 18:51:48.544: E/AndroidRuntime(10794): at java.lang.ClassLoader.loadClass(ClassLoader.java:461) 05-01 18:51:48.544: E/AndroidRuntime(10794): at android.support.v4.app.Fragment.instantiate(Fragment.java:391) 05-01 18:51:48.544: E/AndroidRuntime(10794): ... 23 more 

这是我从现有代码创建google-service-lib时得到的,位于我的C:/ Program Files / eclipse / SDKs / …中,然后将其导入到我的项目中:

错误加载lib ???

有谁知道我还能错过什么? 我开始对这个简单的事情感到绝望……

你的min sdk是11.你需要为12以下的api版本添加支持库

   

FragC是在HoneyComb中引入的。 因此,为了向后兼容,您需要添加支持库

  android:name="com.google.android.gms.maps.SupportMapFragment " 

既然你没有添加支持库就得到了classcastexception

要添加支持库,请查看以下链接

http://developer.android.com/tools/extras/support-library.html

我已将google-play-services_lib导入到我的主项目中。

不符合您的堆栈跟踪。 堆栈跟踪建议您手动修改构建路径以包含Play Services SDK中的JAR,而不是将Play Services SDK附加为Android库项目。