Android(Eclipse)找不到google-play-services_lib.apk尝试过的多种解决方案

时间:2013-11-22 23:10:52

标签: java android eclipse google-maps

我正在创建一个Android应用程序,该应用程序显示基于Google maps API的地图,该地图应与android 2.3 API等级10兼容。

我已经尝试了所有可能遇到的解决方案,例如:

  1. 将现有代码导入我的项目(已复制到工作区,其目录为google-play-services-lib)
  2. 在我的XML中添加了正确的元数据(见下文)
  3. 我尝试使用多种不同的设置设置模拟器
  4. Android应用程序运行正常,但显示此页面时退出。

    的Manifest.xml

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="dcs.aber.ac.uk.cs211.group02"
        android:versionCode="1"
        android:versionName="1.0" >
    
        <uses-sdk
            android:minSdkVersion="10"
            android:targetSdkVersion="22" />
    
        <permission
            android:name="dcs.aber.ac.uk.cs211.group02.permission.MAPS_RECEIVE"
            android:protectionLevel="signature" />
    
    
        <!-- Accessing camera hardware -->
        <!-- putting android.hardware.camera prevents non-camera devices using this app -->
        <uses-feature android:name="android.hardware.camera" />
        <uses-feature
            android:glEsVersion="0x00020000"
            android:required="true" />
        <uses-permission android:name="dcs.aber.ac.uk.cs211.group02.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="dcs.aber.ac.uk.cs211.group02.providers.gsf.permission.READ_GSERVICES" />
        <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
        <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:logo="@drawable/ic_launcher"
            android:theme="@style/AppTheme" >
            <activity
                android:name="dcs.aber.ac.uk.cs211.group02.StartScreen"
                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:name="dcs.aber.ac.uk.cs211.group02.CreateWalkActivity"
                android:label="@string/title_activity_create_walk" >
            </activity>
            <activity
                android:name="dcs.aber.ac.uk.cs211.group02.HelpScreen"
                android:label="@string/title_activity_help_screen" >
            </activity>
            <activity
                android:name="dcs.aber.ac.uk.cs211.group02.WalkRecording"
                android:label="@string/title_activity_walk_recording" >
            </activity>
        </application>
    
        <meta-data android:name="dcs.aber.ac.uk.cs211.group02.API_KEY"
            android:value="AIzaSyBKYpKfU4zn-3IBkskKsLbwRsQ1-IqFldk"
            />
    
        <meta-data android:name="com.google.android.gms.version"
               android:value="@integer/google_play_services_version" />
    
    </manifest> 
    

    显示地图的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:background="@color/black"
        tools:context=".WalkRecording" >
    
        <fragment
            xmlns:android="http://schemas.android.com/apk/res/android"
            xmlns:map="http://schemas.android.com/apk/res-auto"
            android:id="@+id/mapView"
            android:name="com.google.android.gms.maps.SupportMapFragment"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    
    </RelativeLayout>
    

    地图类的java代码

    import com.google.android.gms.maps.GoogleMap;
    import com.google.android.gms.maps.SupportMapFragment;
    
    import android.os.Bundle;
    import android.support.v4.app.FragmentActivity;
    import android.view.Menu;
    
    public class WalkRecording extends FragmentActivity {
    
        private GoogleMap map;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_walk_recording);
    
            map=((SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.mapView)).getMap();
    
            map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            // Inflate the menu; this adds items to the action bar if it is present.
            getMenuInflater().inflate(R.menu.walk_recording, menu);
            return true;
        }
    
    }
    

    日蚀痕迹:

    [2013-11-22 23:03:07 - WalkingTours] ------------------------------
    [2013-11-22 23:03:07 - WalkingTours] Android Launch!
    [2013-11-22 23:03:07 - WalkingTours] adb is running normally.
    [2013-11-22 23:03:07 - WalkingTours] Performing dcs.aber.ac.uk.cs211.group02.StartScreen activity launch
    [2013-11-22 23:03:07 - WalkingTours] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD 'mapTestAPI16'
    [2013-11-22 23:03:07 - WalkingTours] Uploading WalkingTours.apk onto device 'emulator-5554'
    [2013-11-22 23:03:07 - WalkingTours] Installing WalkingTours.apk...
    [2013-11-22 23:03:12 - WalkingTours] Success!
    [2013-11-22 23:03:12 - google-play-services_lib] Could not find google-play-services_lib.apk!
    [2013-11-22 23:03:12 - WalkingTours] Starting activity dcs.aber.ac.uk.cs211.group02.StartScreen on device emulator-5554
    [2013-11-22 23:03:14 - WalkingTours] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=dcs.aber.ac.uk.cs211.group02/.StartScreen }
    

2 个答案:

答案 0 :(得分:1)

查看您的错误日志,此link中提供了一个解决方案。不要导入google-play-services_lib APK,您应该在项目中将其作为Android库项目引用。

答案 1 :(得分:0)

我遇到了同样的问题。 看项目:属性 - &gt;项目下的Java Build Path删除了google-play-services_lib。 没有必要在构建中包含作为项目。