我刚刚开始学习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演示应用程序不会崩溃(尽管地图数据永远不会加载,即使它具有互联网访问权限)
答案 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>