在Android中,无法为SDK版本8膨胀Google地图v2片段
它曾经工作过,但我认为当我将Eclipse更新到API 19时它就坏了。现在,当我尝试运行“地图”活动时,出现了错误:在Android中,无法为SDK版本8膨胀Google地图v2片段,android,google-maps-android-api-2,Android,Google Maps Android Api 2,它曾经工作过,但我认为当我将Eclipse更新到API 19时它就坏了。现在,当我尝试运行“地图”活动时,出现了错误:android.view.InflateException:二进制XML文件行#15:在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:587)中膨胀类片段时出错,因此我开始尝试使用找到的教程重新创建“地图”活动。现在我又回到了让地图显示的问题上。以下是我在布局中得到的: <fragment
android.view.InflateException:二进制XML文件行#15:在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:587)中膨胀类片段时出错
,因此我开始尝试使用找到的教程重新创建“地图”活动。现在我又回到了让地图显示的问题上。以下是我在布局中得到的:
<fragment
android:id="@+id/map_wcbc_FRAG"
android:layout_width="match_parent"
android:layout_height="match_parent"
class="com.google.android.gms.maps.SupportMapFragment" />
以下是舱单相关信息:
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<permission
android:name="com.myapp.wcbc.permission.MAPS_RECEIVE"
android:protectionLevel="signature" >
</permission>
<uses-permission android:name="com.myapp.wcbc.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" />
<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" />
.... <meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="my API Key is here" />
</application>
....
我瞄准的是安卓4.22,我不需要瞄准谷歌API 4.22,是吗?我有Google Play服务和支持v4库。那么,有人能理解为什么地图不会膨胀吗?新版本的Google Play服务库(包括地图v2)放弃了对API级别8(Froyo)的支持。现在是姜饼+ 您可以使用较旧版本的play services库,也可以在自己的应用程序中放弃对Froyo的支持
你能把堆栈跟踪贴出来吗?我明白你的意思了。所以我把我的项目升级到了API 10,我的Android 2.3.4手机可以达到的最高水平,它仍然给我一个错误,它不能膨胀碎片。现在我在API 10上,我在XML中不使用FragmentActivity和SupportMapFragment吗?嗯,很有趣。实际上,我从不使用xml的片段。我总是在FragmentManager中添加它们。但是您仍然需要使用FragmentActivity和SupportMapFragment。好的,我让地图开始工作了。感谢Jon告诉我,截至2013年10月31日,API 8不支持谷歌地图。我将项目升级到API 10,但我仍然很难让它正常工作。我找到的解决方案是,现在在SDK管理器中,在Extras下,有针对Froyo的Google Play服务-您必须安装它。然后将该库项目导入到您的项目中。即导入-->google\u play\u services\u froyo-->libproject-->google-play-services\u库。我不知道为什么它会工作,因为我使用的是API 10,但它确实工作。很有趣。你可能想把它作为一个bug报告给谷歌。我可以想象,如果没有特定于Froyo的jar,应该支持API级别10。
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18" />
<permission
android:name="com.myapp.wcbc.permission.MAPS_RECEIVE"
android:protectionLevel="signature" >
</permission>
<uses-permission android:name="com.myapp.wcbc.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" />
<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" />
.... <meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="my API Key is here" />
</application>