iOS 6 기기로 원격 디버깅하는 동안 Safari에 "No Inspectable Applications"(검사 가능한 응용 프로그램 없음)가 표시되는 이유는 무엇입니까?
모바일 웹 응용 프로그램을 테스트하기 위해 원격 디버깅을 위해 iOS 6 장치를 연결하면 장치 이름이 있는 사파리 개발 메뉴에 "No Inspectable Applications"(검사 가능한 응용 프로그램 없음)가 표시됩니다.
장치 사파리 장치 설정에서 웹 검사기를 사용하도록 설정했습니다.
왜 이런 일이 일어날까요?
iOS 9용 업데이트(OSX El Capitan 사용):
모바일 기기의 Settings -> Safari -> 사기성 웹사이트 경고 = OFF [기본값 = ON]
또한 이 설정을 변경한 후 아이폰을 다시 연결해야 했습니다.
이것으로 해결되었습니다.
에서 개검색사 설록경우에서 개인 된 경우.Settings > Safari원격 디버깅을 사용할 수 없습니다.개인 브라우징을 해제하면 매력적으로 작동합니다.
최근 데스크톱 Safari에서 UI WebView를 디버깅하는 데 문제가 있었습니다. 문제는 앱의 Xcode 구성에 있었습니다.가장 최근 빌드는 테스트용이 아니라 프로덕션용으로 프로비저닝되었습니다.테스트용 앱 재구축 후 사파리 디버그 메뉴에 한 번 더 나타남 :-)
저도 결국 Xcode 설정에 문제가 있다는 것을 알게 되었습니다.
이 문제를 해결하려면:
Safari 디버그 사용
디버거를 할 수 에서 "Safari Debugger"를하십시오).Settings >> Safari >> Advanced >> Enable Debug 9+ 또는 iOS 9+ 기켜:Settings >> Safari >> Advanced >> Web Inspector Development에서 를 볼 수 이렇게 하면 Safari >> Development에서 장치를 볼 수 있습니다.장치가 표시되지만 응용 프로그램이 표시되지 않는 경우 대신 "no inspectable applicationXcode 설정을 확인합니다.
엑스코드
빌드 구성 변경:
프로젝트 이름을 마우스 오른쪽 버튼으로 클릭하고(재생/실행 버튼 아래) '스키마 편집...'을 선택합니다. '실행' 탭 아래의 '스키마 편집...' 창에서 '빌드 구성'을('릴리스' 대신) '디버그'로 변경합니다.
코드 서명 변경:
프로젝트 설정을 표시하려면 파일 트리에서 프로젝트 이름을 클릭합니다.'빌드 설정' 탭을 선택합니다.'프로비저닝 프로파일'을 '자동'으로 변경합니다.Code Sign Identity'를 'iOS Developer'로 변경합니다.
코드 서명을 변경하면 프로덕션 버전을 릴리스할 수 없지만 응용 프로그램을 디버그할 수 있습니다.
몇 가지 시도 사항:
iPhone/iPad에서 홈 버튼을 두 번 눌러 실행 중인 앱 목록을 표시하고 Safari(또는 해당 웹 앱)를 닫은 다음 다시 엽니다.
Mac에서 Safari 종료/다시 열기
iOS 기기의 플러그를 뽑거나 다시 꽂기
참고로 iOS 기기에서 개인 브라우징이 활성화된 상태로 Safari에 첨부할 수 있습니다.
iOS 16.4부터는 수동으로 WKWebView를 검사 가능으로 표시해야 Safari 디버깅이 가능합니다.
#if DEBUG
if #available(iOS 16.4, *) {
webView.isInspectable = true
}
#endif
다녀왔습니다Settings > Safari > Advanced그리고 전환했습니다.Web Inspector에서바에서 ▁from로 합니다.onoffon다시 한 번. 그것이 나를 위해!
XCode 9를 방금 설치한 경우 Safari 11을 설치하는 것을 잊지 마십시오. 그렇지 않으면 "검사할 수 없는 응용 프로그램 없음"이 표시됩니다.
High Sierra의 Safari 11.0.3에서도 동일한 문제가 있었습니다.여기서 Safari Technology Preview를 설치하는 것이 유일하게 제게 도움이 되었습니다.
VPN에 연결되어 있지 않은지 확인합니다.
나의 경우, 나는 El Capitan에서 실행되는 Safari 10.0.2를 가지고 있었고, Simulator(iphone 7)에서 앱을 실행하려고 할 때 Safari의 Develop 메뉴에 Simulator 옵션이 없었습니다.시에라로 업데이트하여 문제를 해결했습니다.
저는 새로운 키 - 인증서(p12)와 프로비저닝 프로필로 앱을 재구축하는 문제를 해결했습니다.제 개발자 계정과 인증서가 만료되어 개발자 메뉴에서 제 PhoneGap 앱을 인식하지 못했습니다.
여기에 나와 있는 모든 답변에서 문제를 해결하지 못한 후 Safari Technology Preview 버전을 설치하는 것이 제대로 작동한다는 것을 알게 되었습니다.
이 Safari 베타 버전을 설치하고 실행한 후 고급 환경설정에서 개발 도구를 활성화하면 휴대폰이 개발 표시줄에 나타납니다(모바일 Safari의 페이지가 열려 있는 경우).
나처럼 다른 사람이 여기 올 경우를 대비해서... iOS 16.4가 이 블록을 변경했습니다.
cordova-ios는 6.3.0에 수정을 가했습니다(그래서 업그레이드는 여러분 중 일부에게 도움이 될 수 있습니다 - https://github.com/apache/cordova-ios/pull/1300) ).
하지만 Ionic cordova 앱은 Ionic Webview를 사용할 수 있는데, 이것은 저의 문제였습니다.드디어 이걸 발견했어요...
Ionic 앱 - Cordova - Safari 디버깅이 작동하지 않습니다.
...이것과 연관된 것은...
https://github.com/ionic-team/cordova-plugin-ionic-webview/pull/677
xCode 프로젝트(CDBWKwebViewEngine.m 파일)에서 수동으로 변경한 후 디버그할 수 있었습니다.
디버깅을 위한 장치 설정, 디버깅을 위한 xCode 스키마 설정 등이 남아 있었지만 이것이 누락된 링크였습니다.
MacOS 또는 xcode를 업데이트하지 않으려면 다음을 시도하십시오.
if webView.responds(to: Selector(("setInspectable:"))) {
webView.perform(Selector(("setInspectable:")), with: true)
}
이것은 저에게 효과가 있었습니다.XCode -> 14.2 (14C18) macOS -> 13.4 (22F66)
참조 -> https://stackoverflow.com/a/76603043/12150745
저는 iOS 시뮬레이터를 통해 이것을 작동시키려고 노력했지만, 이전에 언급된 답들 중 하나도 작동하지 않았습니다.대신 다음을 실행하면 작동했습니다.
npm install -g ios-sim
그 후, 애플리케이션을 시작하자 시뮬레이터가 아래에 나타났습니다.DevelopSafari의 메뉴입니다.
언급URL : https://stackoverflow.com/questions/16999186/why-safari-shows-no-inspectable-applications-during-remote-debugging-with-ios
'programing' 카테고리의 다른 글
| Angular CLI 프로젝트를 업그레이드하는 방법은 무엇입니까? (0) | 2023.07.31 |
|---|---|
| PHP 사용 URL SPACE를 %20으로 바꾸기 (0) | 2023.07.31 |
| Delphi 응용 프로그램을 테스트하는 가장 좋은 방법 (0) | 2023.07.31 |
| 프로토타입 정의 함수에서 개인 멤버 변수 액세스 (0) | 2023.07.31 |
| 자바스크립트 코드를 *순서대로* 실행하는 방법 (0) | 2023.07.31 |