Easwaramoorthy Kanagaraj
Easwaramoorthy Kanagaraj

Reputation: 4213

Why Safari shows "No Inspectable Applications" during remote debugging with iOS 6 device?

When I connect my iOS 6 device for remote debugging for testing my mobile web application, The safari develop menu with my device name shows "No Inspectable Applications".

I have enabled web inspector ON in my device safari device settings.

Why this is happening?

Upvotes: 99

Views: 107250

Answers (16)

Christopher
Christopher

Reputation: 2256

Just wanted to share that as of 4/2024 I ran into this issue and, for me, the solution was using iOS 15 simulator instead of iOS 17 simulator. No idea why or if/how you can get it working again in iOS 17 simulator, but going back to iOS 15 simulator got Safari debug working again for me.

Xcode: 15.3 OSX: 14.4.1 (Sonoma)

Upvotes: 0

Pat Vee
Pat Vee

Reputation: 121

In case anyone else is coming here like me... iOS 16.4 had changes the block this.

cordova-ios put in a fix in 6.3.0 (so upgrading might help some of you - https://github.com/apache/cordova-ios/pull/1300)

However, Ionic cordova apps can use the Ionic Webview, which was my issue. I finally found this...

Ionic app - Cordova - Safari Debug not working

...which linked to this...

https://github.com/ionic-team/cordova-plugin-ionic-webview/pull/677

After I manually made the change in the xCode project (CDBWKWebViewEngine.m file) I was FINALLY able to debug.

I still had settings on the device for debugging, the xCode schema set to debug, etc, but this was the missing link.

Upvotes: 2

Ivan Nikitin
Ivan Nikitin

Reputation: 4125

Starting from iOS 16.4 one has to manually mark the WKWebView as inspectable to allow Safari debugging:

#if DEBUG
       if #available(iOS 16.4, *) {
          webView.isInspectable = true
       }
#endif

Upvotes: 64

Mohamed Ramrami
Mohamed Ramrami

Reputation: 12691

I had the same problem with Safari 11.0.3 on High Sierra. The only thing that worked for me is installing Safari Technology Preview from here.

Upvotes: 4

Jonathan
Jonathan

Reputation: 1399

I went to Settings > Safari > Advanced and toggled the Web Inspector switch from on to off to on again. That did it for me!

Upvotes: 9

Orun
Orun

Reputation: 4603

After all the answers here failed to resolve the issue for me, I figured out that installing the Safari Technology Preview version worked well.

Install this beta of Safari, launch it, enable developer tools in advanced preferences, and your phone will appear in the develop bar (provided a page in mobile Safari is open).

Upvotes: 1

Andrew H
Andrew H

Reputation: 677

Make sure you aren't connected to a VPN.

Upvotes: 3

AjLearning
AjLearning

Reputation: 397

I was trying to get this working via the iOS simulator and none of the previously stated answers worked, even though I tried them all. Instead, running the following worked:

npm install -g ios-sim

After that, once I started the application, the simulator appeared under the Develop menu on Safari.

Upvotes: -2

Steve Seeger
Steve Seeger

Reputation: 1477

An update for iOS 9 (using OSX El Capitan):

On your mobile device under Settings -> Safari -> Fraudulent Website Warning = OFF [default = ON]

I also needed to re-connect the iPhone after changing this setting

This solved it for me.

Upvotes: 58

macio.Jun
macio.Jun

Reputation: 9895

If you just installed XCode 9, do not forget to install Safari 11, or you will see "no inspecable applications"

Upvotes: 3

Gil Epshtain
Gil Epshtain

Reputation: 9801

I had the same issue eventually I understand that the problem is with the Xcode settings.

To solve this issue:

Enable Safari Debug

First of all verify that on the device you have enabled the Safari debugger (on the device go to: Settings >> Safari >> Advanced >> Enable Debug; or iOS 9+ turn on: Settings >> Safari >> Advanced >> Web Inspector). If you've done this you will see your device in Safari >> Develop. if you see your device but you don't see your application under it, instead "no inspectable application", check your Xcode settings.

Xcode

1. Change Build Configuration:

Right click on the project name (under the play/run button) and select 'Edit Schema...', in the 'Edit Schema' window under 'Run' tab change the 'Build Configuration' to 'Debug' (instead of 'Release')

2. Change the Code Signing:

Click on the project name in the files tree, to display the project settings. Select the 'Build Settings' tab. Change the 'Provision Profile' to 'Automatic'. Change the 'Code Sign Identity' to 'iOS Developer'.

Note that changing the code signing will prevent you from release versions for production, however you will be able to debug your application.

Upvotes: 28

Easwaramoorthy Kanagaraj
Easwaramoorthy Kanagaraj

Reputation: 4213

If you have private browsing enabled in Settings > Safari, you will not be able to use remote debugging. If you turned off private browsing, it will work like a charm.

Upvotes: 38

Predrag Tesovic
Predrag Tesovic

Reputation: 11

I resolved the issue with rebuilding the app with new key - certificate (p12) and provisioning profile. My developer account and certificates expired, so it just stopped recognizing my PhoneGap app in Developer menu.

Upvotes: 1

Emmanuel Harguindey
Emmanuel Harguindey

Reputation: 31

In my case, I had Safari 10.0.2, running on El Capitan and when trying to run apps on the Simulator (iphone 7), I did not even have the Simulator option in the Safari's Develop menu. Updating to Sierra, solved the problem.

Upvotes: 1

Dunc
Dunc

Reputation: 18922

A few things to try:

  1. On your iPhone/iPad, double-tap the Home button to bring up the list of running apps, close Safari (or appropriate Web App), then reopen

  2. Quit/reopen Safari on the Mac

  3. Unplug/plug back in iOS device

As a side note, I can attach to Safari with private browsing enabled on the iOS device.

Upvotes: 25

derrylwc
derrylwc

Reputation: 826

I recently had problems debugging a UIWebView in desktop Safari – and it turns out the problem was with my Xcode configuration for the app. The most recent build had been provisioned for production, rather than for Testing. After re-building the app for Testing, it showed up once more in the Safari Debug menu :-)

Upvotes: 30

Related Questions