android地图视图崩溃应用程序

时间:2010-07-21 04:50:18

标签: android google-maps

我刚刚开始学习android的开发。

我设置了一个带有基本文本视图的测试应用,当您点击它时,更改了文本。工作得很好。所以我决定用谷歌地图使用mapview做一些有趣的事情。

我已经按照文档中的说明进行了操作,并查看了demomaps演示应用程序,但是当我在AVD中启动我的应用程序时(指向正确的源,google API lvl3)我得到“应用程序意外停止了请再试一次“,当我在调试模式下启动时,我得到的唯一错误是”源未找到“

以下是我的代码摘录:

视图

<?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:layout_width="fill_parent" 
        android:layout_height="fill_parent"
        android:enabled="true"
        android:clickable="true"
        android:apiKey="[ommitted for safety - i have an apikey though]"
        />
</LinearLayout>

清单

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="leblanc.test.HelloCora"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">

        <activity android:name=".hello"
                  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>
    <uses-sdk android:minSdkVersion="3" />
    <uses-library android:name="com.google.android.maps" />
</manifest> 

我的源码.java基本上是默认的

我在Linux机器上使用ADT在eclipse中开发

如果您还需要其他信息,请告知我们

谢谢!

编辑:有关我收到的错误的更多信息。

TestApp [Android Application]
  DalvikVM [localhost:8619]
    Thread [ <3> Main ] (Suspended (exception RuntimeException))
       ActivityThread.performLaunchActivity(ActivityThread$ActivityRecord) line: 2268   
       ActivityThread.handleLaunchActivity(ActivityThread$ActivityRecord) line: 2284    
       ActivityThread.access$1800(ActivityThread, ActivityThread$ActivityRecord) line: 112  
       ActivityThread$H.handleMessage(Message) line: 1692   
       ActivityThread$H(Handler).dispatchMessage(Message) line: 99  
       Looper.loop() line: 123  
       ActivityThread.main(String[]) line: 3948 
       Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]   
       Method.invoke(Object, Object...) line: 521   
       ZygoteInit$MethodAndArgsCaller.run() line: 782   
       ZygoteInit.main(String[]) line: 540  
       NativeStart.main(String[]) line: not available [native method]   

另外,有趣的是android SDK中的demomaps演示应用程序不会崩溃(尽管地图数据永远不会加载,即使它具有互联网访问权限)

2 个答案:

答案 0 :(得分:2)

清单文件中存在错误,下面的代码应该在应用程序标记中

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

所以在更改之后它将是

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="leblanc.test.HelloCora"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <uses-library android:name="com.google.android.maps" />
        <activity android:name=".hello"
                  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>
    <uses-sdk android:minSdkVersion="3" />

</manifest> 

答案 1 :(得分:1)

我认为“从网页访问地图(谷歌地图)”存在问题。

要访问网络,我们必须添加"INTERNET PERMISSION" in AndroidMenifest.xml文件。

请在</application>标记下方添加以下行。

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