๋ฒ๊ทธ ์ค๋ช
๋น๋์ค๊ฐ๋ก๋๋์ง ์์ต๋๋ค ์คํฌ๋กค์์ ํ๋๋ฅผ ๋ณผ ์ ์์ต๋๋ค ์ฒจ๋ถ ๋ ๋น๋์ค์ ๋ชจ๋ ๊ฒ์ ํ์ํฉ๋๋ค
์ฌํํ๊ธฐ ์ํด
์๋ฌด ๋์์์ด๋ ์คํํ์ธ์.
์ฒจ๋ถ ํ์ผ
๊ธฐ์ ์ ์ธ๋ถ ์ฌํญ:
์ํธ
YoutubePlayerControllerProvider(
์ปจํธ๋กค๋ฌ: _์ปจํธ๋กค๋ฌ,
์์: YoutubePlayerIFrame(
์ข
ํก๋น: 16 / 9,
),
),
"useShouldOverrideUrlLoading"๊ณผ ๊ด๋ จ๋ ๊ฒ ๊ฐ์ต๋๋ค.
๋ค์ ํ ์คํธ๋ฅผ ์ํํ์ผ๋ฉฐ iOS ์ผ์ด์ค(์๋ฎฌ๋ ์ดํฐ Iphone 12 Pro ๋ฐ ์ค์ Iphone 6s)์์ ์ ๋๋ก ์๋ํ์ต๋๋ค.
initialOptions: InAppWebViewGroupOptions(
crossPlatform: InAppWebViewOptions(
/* ... */
useShouldOverrideUrlLoading: false, //I switched this to false, looks always get in this callback only in iOS (Android/Web is fine).
),
ios: IOSInAppWebViewOptions(
/* ... */
),
android: AndroidInAppWebViewOptions(
/* ... */
),
),
๋๋ ๊ทธ ํ๋ ์ด์ด๊ฐ useShouldOverrideUrlLoading์ false๋ก ์ค์ ํ ํ์ ์ฌ์ํ์ง๋ง shouldOverrideUrlLoading์ด ์๋ ์ ์ฒด ๊ธฐ๋ฅ์ด ํธ๋ฆฌ๊ฑฐ๋์ง ์๋๋ค๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค. ์ฌ๊ธฐ ์์ inappwebview ๋ฌธ์ ์ ์ ์ฌํ ๋ฌธ์ ๋ฅผ ๋ณด์์ต๋๋ค.
๋ด ๊ตฌ์ฑ:
์ ํ: ์ค์ iPhone 10
IOS: 14.7.1
Flutter ๋ฒ์ : 2.2.3 ์์
youtube_player_iframe ๋ฒ์ : 2.2.1
์ด ๊ฒฝ์ฐ isReady ๊ฐ์ ๋น๋์ค๊ฐ ๋ก๋๋์ง ์๋ ๊ฒ๊ณผ ๊ฐ์ ํจ๊ณผ๋ฅผ ์ ๊ณตํ๋ ํญ์ false ์
๋๋ค.
์ด ์ค๋ฅ๋ ๋ด ์ฑ์ด ๊ฒ์๋์ง ์๋๋ก ์ฐจ๋จํฉ๋๋ค. ์ต์ flutter ๋ฒ ํ ์ฑ๋ 2.4.0-4.2.pre ๋ฐ dev ์ฑ๋ 2.5.0-5.0.pre์์ ํ
์คํธํ์ง๋ง ์ฌ์ ํ ๋์ผํ ๊ฒฐ๊ณผ์
๋๋ค.
v2.2.2 ๊ฐ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋์ง ํ์ธํด ์ฃผ์๊ฒ ์ต๋๊น?
๋ ํ๋ซํผ ๋ชจ๋์์ ๋ค์ ์๋ํจ์ ํ์ธํ ์ ์์ต๋๋ค. ๋งค์ฐ ๊ฐ์ฌํฉ๋๋ค.