React native 如何在不呈现mainInterface.storyboard的情况下使用react本机共享菜单
我刚刚将react native share菜单添加到我的项目中,一切都按预期进行。但我想从共享菜单打开我的应用程序,而不显示对话框模式(附加图像)。它只在iOS上显示。 我将didSelectPost()添加到viewDidLoad()中,之后它可以在模拟器上工作,但不能在真实设备上工作React native 如何在不呈现mainInterface.storyboard的情况下使用react本机共享菜单,react-native,react-native-ios,React Native,React Native Ios,我刚刚将react native share菜单添加到我的项目中,一切都按预期进行。但我想从共享菜单打开我的应用程序,而不显示对话框模式(附加图像)。它只在iOS上显示。 我将didSelectPost()添加到viewDidLoad()中,之后它可以在模拟器上工作,但不能在真实设备上工作 override func viewDidLoad() { super.viewDidLoad() if let hostAppId = Bundle.main.object(forInfoDict
override func viewDidLoad() {
super.viewDidLoad()
if let hostAppId = Bundle.main.object(forInfoDictionaryKey: HOST_APP_IDENTIFIER_INFO_PLIST_KEY) as? String {
self.hostAppId = hostAppId
} else {
print("Error: \(NO_INFO_PLIST_INDENTIFIER_ERROR)")
}
if let hostAppUrlScheme = Bundle.main.object(forInfoDictionaryKey: HOST_URL_SCHEME_INFO_PLIST_KEY) as? String {
self.hostAppUrlScheme = hostAppUrlScheme
} else {
print("Error: \(NO_INFO_PLIST_URL_SCHEME_ERROR)")
}
didSelectPost() //call post function
}你需要制作自己的共享扩展,即使它只是一个占位符,在你被带到应用程序之前。确保您严格遵守以下说明: 完成后,将显示您在index.share.js中注册的“MyShareComponent”,而不是您在帖子中提到的对话框模式
AppRegistry.registerComponent(
"ShareMenuModuleComponent",
() => MyShareComponent
);
在该组件中,您可以显示自己的自定义共享对话框,也可以在安装主应用程序后直接重定向到主应用程序,如下所示:
useEffect(() => {
ShareMenuReactView.data().then(({mimeType, data}) => {
ShareMenuReactView.continueInApp({shareInfo: data});
});
}, []);
我已经成功地将此方法用于我自己的共享对话框,并直接重定向到应用程序。你找到解决方案了吗?@很好,还没有。今天早上,我按照创建共享扩展的说明进行操作,然后触发一个直接重定向到应用程序的程序,我将尝试一下。如果您需要,可以在回答中提供信息。@太好了,请回答。提前谢谢。@Geat请您在此处添加您的答案。它对我有用。谢谢