2014-09-29 7 views
0

Я пытаюсь интегрировать карты google в свое приложение для Android, но после создания и запуска его на телефоне (Android 4.4.4) он сработает. Если я запускаю эмулятор, я получаю сообщение «Failure [INSTALL_FAILED_MISSING_SHARED_LIBRARY]». Что я могу сделать неправильно?Google maps v2 проблемы с интеграцией API

Вот мои файлы

MainActivity.java

private GoogleMap mMap; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_tieride); 

    SupportMapFragment mapFragment = 
      (SupportMapFragment)  getSupportFragmentManager().findFragmentById(R.id.map); 

    if (savedInstanceState == null) { 
     // First incarnation of this activity. 
     mapFragment.setRetainInstance(true); 
    } else { 

     mMap = mapFragment.getMap(); 
    } 
    setUpMapIfNeeded(); 
} 

@Override 
protected void onResume() { 
    super.onResume(); 
    setUpMapIfNeeded(); 
} 

private void setUpMapIfNeeded() { 
    if (mMap == null) { 
     mMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map)) 
       .getMap(); 
     if (mMap != null) { 
      // Enabling MyLocation Layer of Google Map 
      mMap.setMyLocationEnabled(true); 
     } 
    } 
} 

и вот мой макет

<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.SupportMapFragment" /> 

</RelativeLayout> 

манифеста Файл

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="there is my package" > 

<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.gms.version" 
      android:value="@integer/google_play_services_version" /> 

    <meta-data 
      android:name="com.google.android.maps.v2.API_KEY" 
      android:value="there is my key, which i got from API console"/> 


    <uses-library android:name="com.google.android.maps" /> 

    <permission 
      android:name="(there is my app path).permission.MAPS_RECEIVE" 
      android:protectionLevel="signature"/> 
    <uses-permission android:name="(there is my app path).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"/> 

    <activity 
     android:screenOrientation="portrait" 
     android:name=".login.LoginActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:screenOrientation="portrait" 
     android:name=".main.MainActivity" 
     android:label="@string/thereismytitle" > 
    </activity> 
</application> 

</manifest> 
+0

Просто проверяю, если вы прочитали это тот же пост: http://stackoverflow.com/questions/1113088/install-failed-missing-shared-library-error-in-android – denden130

+0

Я так и сделал. Теперь эмулятор падает, как телефон – Nickstery

+0

Поскольку вы используете 'SupportMapFragment', убедитесь, что библиотека поддержки правильно добавлена. – ashoke

ответ

0

Является ли ваш целевой эмулятор установлен с помощью Google API s (Google Inc.)? В прошлый раз, когда я использовал google-карту api, у меня был такой же опыт, и он работал после того, как я установил цель в API Google (Google Inc.) - уровень API (версия).