【发布时间】:2012-03-26 14:35:19
【问题描述】:
我做了一个应用,现在发布了。我面临一个奇怪的问题,即从市场下载的应用程序的行为与我通过 Eclipse 运行测试运行时的行为不同。
我的应用程序在 web 视图中启动 maps.google.com 网址,如下所示:
if (url != null && url.startsWith("http://maps.google.com")) {
mWebView.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
} else {
view.loadUrl(url);
return false; }
以此为目的:
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="helloworld" />
</intent-filter>
现在,当我点击后退按钮关闭谷歌地图时,在我的测试环境中,它会直接返回到它在我的主要活动中所在的页面。但在已发布的应用程序上,它会重新启动整个应用程序,显示启动画面和所有内容。
我现在已经尝试导出它 4 次,但无法弄清楚问题出在哪里......有人有任何指示吗? 真的很奇怪,因为它可以通过 eclipse 在本地工作(在同一物理设备上运行)。
【问题讨论】:
-
在导出 APK 之前是否尝试过清理项目?您还在使用模拟器还是物理设备。
-
没有可读取的 logcat,因为它只在已发布的应用程序上执行此操作。当我尝试这样做时,试运行显示没有错误。我在物理设备(xperia arc)上运行它。我会尝试清洁它! :)
-
仍然会有一个 logcat - 无论您正在运行什么或它来自哪里,它都会一直存在。当设备通过 USB 插入并运行应用程序的市场版本时,在命令行中尝试
adb logcat命令 - 您在 Eclipse 中的测试环境(我假设)不是您可以找到 logcat 的唯一地方。跨度> -
会试试的。现在清洁后它的行为有所不同。第一次加载应用程序时,会触发相同的事件,但之后它的行为就像我想要的那样,无需重新启动。将尝试看看 logcat 看到了什么 :) 并感谢您的回复。
-
好吧,还有其他几个测试设备,包括另一个 Arc。原来这只是我的测试设备出错了。现在一切正常,重新启动和一些艰难的爱情对其进行了排序!谢谢大家的回复! :) 哦,在这种情况下,关闭主题的最佳方式是什么?
标签: android google-maps android-intent