android - 添加谷歌地图功能后无法实例化 Activity ComponentInfo

标签 android eclipse android-manifest android-mapview android-maps

在我的应用程序中,当我选择按钮时,它会将我定向到 mapView 类,该类向我显示用户的当前位置。

但是,它抛出

java.lang.RuntimeException: Unable to instantiate activity. ComponentInfo error

我已经在AndroidManifest文件中添加了java类文件。

我的xml文件如下..

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <com.google.android.maps.MapView 
        android:id="@+id/mapView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:enabled="true"
        android:clickable="true"
        android:apiKey="my api key"/>

</LinearLayout>

我的java类如下

package c.c.c;

import com.google.android.maps.MapActivity;
import android.app.Activity;
import android.os.Bundle;

public class MygoogleActivity extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

    @Override
    protected boolean isRouteDisplayed() {
        // TODO Auto-generated method stub
        return false;
    }
}   

我的android list 文件如下

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="c.c.c" android:versionCode="1" android:versionName="1.0">

    <uses-sdk android:minSdkVersion="8" />
    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission> 
    <uses-library android:name="com.google.android.maps" />
    <uses-permission android:name="android.permission.INTERNET" ></uses-permission>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />  

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".MygoogleActivity" android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

最佳答案

您需要在 AndroidManifest 文件中添加 google map 用户库

AndroidManifest.xml

<application android:icon="@drawable/icon" android:label="@string/app_name">

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

您还需要提供互联网权限...

 <uses-permission android:name="android.permission.INTERNET"></uses-permission>

关于android - 添加谷歌地图功能后无法实例化 Activity ComponentInfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10671515/

相关文章:

android - 启动 Android AVD 崩溃并出现 java.awt.HeadlessException

java - AndroidDriver 不是通用的,不能参数化

java - Linux 上 Java 开发的常见做法是什么?

java - 在 Activity 中添加后退按钮

android - 在 Android 应用程序中显示当前时间和日期

android - 在 AndroidManifest 中使用构建变量

android - AndroidManifest 中未解析的类 ParseFirebaseInstanceIdService

android - 如何添加多个权限?一个来自 list ,一个来自运行时

android - Activity.finish() 和 startActivityForResult() 如何相互协作?

java - OnActivityResult() Intent 数据无缘无故总是 null