我想知道Metamask钱包应用程序是否安装在手机上。这是我的代码:
const { value } = await AppLauncher.canOpenUrl({ url: 'metamask-blockchain-wallet://' });
我正在我的iOS设备上测试这个。我还添加了LSApplicationQueriesSchemes在info.plist。
<key>LSApplicationQueriesSchemes</key>
<array>
<string>metamask-blockchain-wallet</string>
</array>
我得到这个错误:
-canOpenURL: failed for URL: "metamask-blockchain-wallet://"-错误:"操作无法完成。(OSStatus error -10814.)">
如果我使用更改LSApplicationQueriesSchemes如:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>metamask</string>
</array>
我得到一个错误,说
-canOpenURL: failed for URL: "metamask-blockchain-wallet://"- error: "此应用不允许查询方案元任务-区块链-钱包">
如何解决这个问题?
所以我找到了这个问题的答案。在错误中给出了答案。我在canOpenUrl()中提供了错误的URL方案和LSApplicationQueriesSchemes。我刚刚替换了元任务-区块链-钱包与metamask而且效果很好。
const { value } = await AppLauncher.canOpenUrl({ url: 'metamask://' });
和info.plist
<key>LSApplicationQueriesSchemes</key>
<array>
<string>metamask</string>
</array>
(应该有一种方法让开发人员找到应用程序的url方案,可在应用程序商店和google play商店!)