version: iOS 16.4(20E5239a) both on my iphone and Simulator,Safari -> develop shows "no inspectable applications"
iOS 16.4 webview can not debug in safari web inspector
Also seeing this since upgrading to Xcode 16.4. Previously, it was working.
Made the careless mistake of updating to iOS 16.4, and now our Capacitor application doesn't appear in Safari debug. I hope this gets solved quickly!
Are you using this to debug webpages or for webviews in an app?
Apparently this is by design now with iOS 16.4. You need to actually mark the webview as inspectable even while running in debug mode from Xcode. See blog post at https://webkit.org/blog/13936/enabling-the-inspection-of-web-content-in-apps/
If you're on Capacitor, there are more details and a temporary workaround here: https://github.com/ionic-team/capacitor/issues/6441
Installing Safari Technology Preview 16.4 on the mac to access the console from an iPhone with safari 16.4 make the console log available again. Thank you thmclellan :)
Installing Safari Technology Preview 16.4 on the mac DID NOT help me..
Cordova team fix this bug with the release of Cordova platform iOS 6.3.0 (see Cordova blog post: https://cordova.apache.org/announcements/2023/04/15/cordova-ios-release-6.3.0.html)
If you cant update your Cordova iOS platform for any reasons, you can update yourself the CordovaLib/Classes/Private/Plugins/CDVWebViewEngine/CDVWebViewEngine.m file. Open your project in Xcode, go to the CDVWebViewEngine.m file, search for the lines:
WKWebView* wkWebView = [[WKWebView alloc] initWithFrame:self.engineWebView.frame configuration:configuration];
wkWebView.UIDelegate = self.uiDelegate;
Then add following line and save. Re build your project and it should works (solution found here)
WKWebView* wkWebView = [[WKWebView alloc] initWithFrame:self.engineWebView.frame configuration:configuration];
wkWebView.UIDelegate = self.uiDelegate;
if (@available(iOS 16.4, *)) {
BOOL allowWebviewInspectionDefault = YES;
wkWebView.inspectable = [settings cordovaBoolSettingForKey:@"InspectableWebview" defaultValue:allowWebviewInspectionDefault];
}
I also recommend using Safari Technology Preview instead of Safari for debugging with web inspector. Good luck.
Solution by @iwantosee its works for me, and with Safari Technology preview it works. Thank you so much for your Answer.
@iwantosee - for my Cordova project I am running cordova-ios 6.2.0 and implemented your recommended changes to the CDVWebViewEngine.m file, recompiled my app from CLI - then deployed my app from Xcode to the simulator but my app does not show under the Safari -> Develop -> iPhone Simulator. The simulator is listed...but the app is not.
I also downloaded the Safari Technology Preview and the same thing...simulator is listed but the app is not.
I compared your edit to the one found in the same file from the GitHub repo you referenced. though similar, it is written differently. Does this matter?
Any suggestions?