1

我知道它以前不可能在使用Google Maps V2 API的模拟器中运行应用程序,因为这也需要Google Play服务。我看到很多这个问题正在讨论中,我被告知它不能完成,但这些信息至少已经两年了。我们可以在模拟器中运行Google Maps V2吗?

我正在使用Android Studio,并且已经构建了运行Google API 22 armeabi-v7a的Nexus 5仿真器,因为我需要在Android 5.0上测试我的应用程序,并且我没有具有该级别的手机。但是,当然,这个模拟器不适用于我的isPlayServicesAvailable测试。

这是我的AVD细节。我的理解是选择一个Google API可以做到这一点。 。 。 enter image description here

今天有可能建立一个模拟器来运行所有这些吗? 谢谢, 院长

+0

Genymotion是免费的,并支持5.0。您可以试试这个http://www.techrepublic.com/article/pro-tip-install-google-play-services-on-android-emulator-genymotion/ –

+0

hmmmm ...因为我在Google Play上销售我的应用程序I需要商业授权Genymotion? –

+0

您是否尝试过选择Google Play API x86选项? – AlexVPerl

回答

0

是的,你可以设置一个谷歌播放模拟器,应该是创建一个选项之一。如果不存在,您可能需要进入sdk经理并获取谷歌播放服务,然后重试。

+0

我拥有Google Play服务,并为模拟器选择了Google API –

0

是的,您可以使用Google Maps V2 API在模拟器中运行应用程序。 您必须在您的项目中导入Google Play服务库,检查该库是否被正确识别并在AndroidManifest中添加Google Map的API密钥。

关于Google Play Services Library的导入,您可以在这里找到更多信息: https://developers.google.com/android/guides/setup#add_google_play_services_to_your_project

对于检查库是否被正确识别你可以使用如下代码:

private boolean checkPlayServices() { 
    GoogleApiAvailability googleAPI = GoogleApiAvailability.getInstance(); 
    int result = googleAPI.isGooglePlayServicesAvailable(this); 
    if(result != ConnectionResult.SUCCESS) { 
     if(googleAPI.isUserResolvableError(result)) { 
      googleAPI.getErrorDialog(this, result, 
        PLAY_SERVICES_RESOLUTION_REQUEST).show(); 

     } 

     return false; 
    } 

    return true; 
} 

但要记住初始化这个常数:

private final static int PLAY_SERVICES_RESOLUTION_REQUEST = 9000; 

最后,我们可以创建你谷歌地图V2 API密钥请按照以下说明操作: Google Map API KEY How To

要记住,在你的AndroidManifest.xml文件添加这些指令:

<!-- Google Map V2 Key TEST--> 
    <meta-data 
     android:name="com.google.android.maps.v2.API_KEY" 
     android:value="GOOGLE-MAPS-API-KEY" /> 

    <meta-data 
     android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 

祝您好运!

相关问题