Mar*_*lto 2 android phonegap-plugins cordova inappbrowser ionic
我被困在同一个问题2天:(
我有两个Ionic-PhoneGap应用程序需要能够相互打开,不是在WebView外部,而是在外部(如果应用程序已经运行,它可以重新启动或只是继续 - 我将处理两者).
经过几个小时的研究,我发现,使用InAppBrowser (window.open(URL, _system)),我能够在外部打开我尝试的每个商业应用程序(Facebook,推特,地图等).尝试打开我的某个应用程序时,同一个调用会在Web视图中打开它.
window.open("fb://", _system) -> opens Facebook separately.
window.open("myapp://", _system) -> opens my application in a web view.
Run Code Online (Sandbox Code Playgroud)
我试图修改AndroidManifest.xml和config.xml,但几乎我改变的一切都被建筑物抹去了.
例如,如果我"android:launchMode="singleTop"改为"android:launchMode="singleTask"并运行"Ionic build",我的更改就会丢失.
有解决方案吗
解决方案!!!
需要在app/config.xml中添加这些行:
<preference name="AndroidLaunchMode" value="singleTask" />
<access origin="*" launch-external="yes" />
Run Code Online (Sandbox Code Playgroud)
并在app/platforms/android/AndroidManifest.xml中将android:lauchMode更改为"Single Task":
...
<application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name" android:supportsRtl="true">
<activity android:launchMode="singleTask" android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:name="MainActivity" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
<intent-filter android:label="@string/launcher_name">
<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="fkapp" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
...
希望它会帮助别人!!
| 归档时间: |
|
| 查看次数: |
5627 次 |
| 最近记录: |