-
Notifications
You must be signed in to change notification settings - Fork 440
Switching to external without permission [Follow up to #551] #2119
Comments
This one may involve Private-APIs in order to fix. I researched it many many times. There used to be a solution to this with Problem: Universal Links (Deep-Linking) via If you go to Therefore, the only way to fix this is to use private-apis in order to determine if the WebView is going to open a deep-link. Option: 2, pull down the deep-link config for EVERY single request the WKWebView makes. IE: If we visit reddit.com, we'd have to pull down: Both of these options are not worth it. Option 1 can get us rejected from the store by Apple for use of Private-APIs. Option 2 will involve a LOT of parsing (especially for websites like facebook).. Option 2 will mean that every site we visit will be slower as we have to parse the config if it exists.. |
cc: @jhreis ^ Not sure what we should do if anything. |
@Brandon-T @srirambv @jhreis - I don't think we can do anything right away. May be we can reach out to our friends at Apple and see if they are willing to expose these APIs? |
FYI the private API needed to accomplish this: https://stackoverflow.com/questions/38450586/prevent-universal-links-from-opening-in-wkwebview-uiwebview We should however also ask Apple to make this a public API. (either filing our own rdar or duping an existing one) |
Chrome for iOS suppresses external app loading if in a private browser window. I feel like it should be fine to load external apps in regular windows, but in private windows, it should be suppressed. I started a discussion about this here: https://community.brave.com/t/suppress-app-loading-in-private-browser-on-ios/97382 |
Also disables opening external apps while browsing in Private Mode
Also disables opening external apps while browsing in Private Mode
@srirambv The solution to this problem cannot be solved by adding a permission prompt (as we do with known schemes such as maps/tel/etc.) because we do not know that Brave will launch another app when a user taps a link. Therefore the original issue has been solved a different way as seen in the PR: #3329 |
Verification passed on iPhone 7+ with iOS 14.4 running 1.24 (21.3.25.18)
Normal tabiPhone.7+.Normal.Tab.mp4Private tabiPhone.7+.Private.Tab.MP4Verification passed on iPhone XR with iOS 13.5 running 1.24 (21.3.25.18)
Normal tabiPhone.XR.Normal.Tab.MP4Private tabiPhone.XR.Private.Tab.MP4Verification passed on iPad Pro with iOS 12.4.1 running 1.24 (21.3.25.18)
Normal tabiPad.Normal.Tab.MP4Private tabiPad.Private.Tab.MP4 |
Description:
Switching to external without permission [Follow up to #551]
Steps to Reproduce
Actual result:
No user permission asked before switching to external app
Expected result:
Should have asked persmission which was the fix on #551
Reproduces how often: [Easily reproduced, Intermittent Issue]
Easy
Brave Version:
1.14.1
Device details:
iPhone and iPad
Website problems only:
Additional Information
Reported on community https://community.brave.com/t/ask-before-open-app-instead-of-website/97970 and reproduced on iPhone
Adding same security labels as #551
cc: @jumde
The text was updated successfully, but these errors were encountered: