【发布时间】:2014-05-20 18:18:40
【问题描述】:
我正在尝试设置一个移动网站,当在 Android 浏览器中单击链接时,该网站会打开我的移动应用程序。为了完成这项任务,我在 AndroidManifest.xml 中添加了一个意图过滤器,如下面的代码所示:
<activity android:name=".MyAppActivity" android:label="@string/app_name" android:theme="@style/Theme.Titanium" android:configChanges="keyboardHidden|orientation" android:alwaysRetainTaskState="true" android:launchMode="singleInstance">
<intent-filter>
<data android:scheme="myapp" android:host="app"/>
<action android:name="android.intent.action.MAIN"/>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.LAUNCHER"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
</intent-filter>
</activity>
浏览器中的链接本身运行良好,当应用程序首次使用 Ti.Android.currentActivity 打开时,我可以轻松收集参数。当应用程序已经打开,但用户单击链接从移动浏览器中打开它时,问题就出现了。当我的应用程序打开时,我不会从之前中断的地方继续,而是看到启动画面。这是双向的:如果我先从移动浏览器打开应用程序,然后尝试稍后从 Android 主屏幕或应用程序抽屉恢复它,我只会看到启动画面。根据我在互联网其他地方看到的提示,我尝试将以下代码添加到 AndroidManifest.xml(如上所示):
android:alwaysRetainTaskState="true" android:launchMode="singleInstance"
但是,这似乎对任何事情都没有影响,并且同样的问题仍然存在。我在这里想念什么? 非常感谢任何帮助。
【问题讨论】:
标签: android android-intent android-activity titanium intentfilter