我正在尝试设置一个移动网站,在Android浏览器中点击链接时会打开我的移动应用。为完成此任务,我在AndroidManifest.xml中添加了一个intent过滤器,如下面的代码所示:
<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"
然而,这似乎对任何事情都没有影响,同样的问题仍然存在。我在这里错过了什么?任何帮助都将非常赞赏。
答案 0 :(得分:1)
我所做的就像这样
<android xmlns:android="http://schemas.android.com/apk/res/android">
<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="18"/>
<manifest android:installLocation="preferExternal"
android:versionCode="1" android:versionName="1.0">
<uses-permission android:name="android.permission.CALL_PHONE"/>
<application android:label="App Name" android:largeHeap="true">
<activity
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:launchMode="singleTop"
android:name=".mainActivity" android:theme="@style/Theme.Titanium">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
<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="schemaname"/>
</intent-filter>
</activity>
</application>
</manifest>
</android>
它对我来说很好。对于Android 4.XX