问题描述
我已经在delphi中为Android实现了一个Intent,它可以接收来自各种应用程序和浏览器的链接。
关闭该应用程序后,一切正常,并且在启动第一个共享应用程序之后,但是当该应用程序已打开时,Chrome会在内部打开第二个实例,并且该应用程序会在启动时挂起,直到我关闭已经打开的应用程序
在这个示例中,我遇到了与我的应用程序相同的问题,当应用程序已经打开时,意图无法得到管理,并且该应用程序仍处于阻止状态
这是我的清单
<activity android:name="com.embarcadero.firemonkey.FMXNativeActivity"
android:label="%activityLabel%"
android:configChanges="orientation|keyboard|keyboardHidden"
android:launchMode="singleTask">
<!-- Tell NativeActivity the name of our .so -->
<meta-data android:name="android.app.lib_name"
android:value="%libNameValue%" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
a
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND"/>
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
</activity>
问题似乎与Chrome在自定义标签内内部打开应用的事实有关,但这是一个假设 如果我使用其他浏览器(例如Dolphin),则无论应用程序是关闭还是已经打开,都可以管理意图。
另一方面,如果Chrome浏览器发现该应用程序处于打开状态,它仍会在内部启动第二个实例,但是,在我关闭第一个应用程序之前,该实例仍在启动窗体上处于阻止状态 我已经看到Chrome在所有其他应用(例如gmail,Whats应用等)上的行为也与此相同,但是它们仍然能够管理通话 我试图修改清单文件(启动模式),但是无论如何我还是不能阻止这种情况或管理双重执行。 我现在正在开发一个测试应用程序,然后使用相同的原理将更改移植到我的应用程序中,但是此问题阻止发布 我试图声明不同于main的第二个活动,但是我没有找到如何注册该动作。 chrome在共享面板中可以看到它,但是没有启动。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)