前提・実現したいこと
SwiftでSFSafariを使っているのですがサードパーティーのキーボードだと入力に問題が起きるので(固まる)標準のキーボードを使いたい。
追記1:Safariのキャッシュをクリアしたら次回起動時のみ直っていますがキャッシュをクリアする訳には行かないです。。。
追記2:動かないキーボードを開いた状態で別のアプリを開き、また戻ってくると入力が可能でした。内部で何が起こっているのでしょう、、、このイベントを意図的に起こせますか?
発生している問題
したいことは【Swift】 カスタムキーボードを無効化すると同じことなのですが、
iOS13以降だとAppDelegateが使えないようなのでSceneDelegateに似せて書いたのですがエラーは出ないのですが実行してもサードパーティーのフリーズしたキーボードが出てきます。
該当のソースコード
サイトに載ってたコード
Swift5
1func application(_ application: UIApplication, shouldAllowExtensionPointIdentifier extensionPointIdentifier: UIApplicationExtensionPointIdentifier) -> Bool { 2 if extensionPointIdentifier == .keyboard { 3 return false 4 } 5 return true 6}
ScenneDelegateに書き直したコード
Swift5
1func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options a: UIApplication.ExtensionPointIdentifier) -> Bool { 2 if a == .keyboard { 3 return false 4 } 5 return true 6 }
試したこと
ここを見てAppDelegateを実行するようにした。(SceneDelegateを消した) => ブラックアウトして正常に動かなくなった。
scene()の中身をエラーが出ない違う書き方がいくつかあったのでそれを一応試した。
補足情報(FW/ツールのバージョンなど)
XCode11.4.1
回答1件
あなたの回答
tips
プレビュー