2017-01-17 1 views
0

현재 Cordova의 모바일 앱을 개발 중이며 Android에서 개발/테스트를 시작했습니다. 안드로이드 플랫폼에서 모든 것이 잘 작동하는 것으로 보인다. iOS로 전환 할 때 문제가 발생하기 시작했습니다. WKWebView 플러그인을 사용하기로 결정했는데 이것이 도움이되는 것처럼 보였습니다. 그러나 서버를 사용하여 API를 통해 데이터를 가져오고 더 이상 사용할 수 없습니다. WKWebView 플러그인을 사용하기 전에 API가 호출되어 정보를 제대로로드하고있었습니다. 이 API에 액세스하려면 config.xml에서 access origin을 사용하고 있습니다. 우리가 WKWebView를 사용하지 않는 것으로 돌아갈 수없는 주된 이유는 이상한 렌더링 문제가 있었고 스크롤링이 "스크롤링/던지기"스크롤링이 아니었기 때문입니다. 계속 움직이려면 "위로"또는 "아래로"스 와이프해야했습니다. WKWebView 및 XHR

는 (광산은 localhost입니다 : 0) 여기 사람의 www 파일을 제공하는 로컬 서버를로드 WKWebView 플러그인을 사용하는 방법에 대한 아이디어가있을 수 있습니다 궁금했고, 또한 API에 액세스 할 수 access origin를 사용합니다.

내 config.xml에

<?xml version='1.0' encoding='utf-8'?> <widget id="com.test.testmobile" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0"> <name>Test</name> <description> Mobile App for Android and iOS </description> <author email="[email protected]" href="test.com"> test </author> <content src="http://localhost:0" /> <access origin="http://10.1.0.215:6002" /> <platform name="android"> <allow-intent href="market:*" /> </platform> <platform name="ios"> <allow-intent href="itms:*" /> <allow-intent href="itms-apps:*" /> </platform> <plugin name="cordova-plugin-whitelist" spec="1" /> <feature name="CDVWKWebViewEngine"> <param name="ios-package" value="CDVWKWebViewEngine" /> </feature> <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" /> <preference name="AlternateContentSrc" value="http://localhost:0" /> </widget>

답변

0

은 내가 API를 통해 데이터를 끌어 서버를 사용하고 내가 더 이상 할 수 없습니다. WKWebView이 (this Cordova issue 참조)을 받아들이

이 API를 가정하면 AJAX/XHR, 순서 해야는 CORS 헤더를 포함하는 서버 응답에 액세스하는 외부 서버에 있습니다.

우리가 WKWebView를 사용하지 않는 것으로 돌아갈 수없는 주된 이유는 이상한 렌더링 문제가 있었고 스크롤링이 "던지기/던지기"스크롤링이 아니었기 때문입니다. 계속 움직이려면 "위로"또는 "아래로"스 와이프해야했습니다.

코르도바와 WKWebView이 (here이 알려진 문제의 목록입니다) 참을 수 없게되면

, 당신은있는 UIWebView 내에서 스크롤 네이티브 느낌 솔루션으로 iScroll을 고려하실 수 있습니다.