私はiOSとPhonegapの開発に非常に慣れておらず、Xcode警告に関するすべてのトピックがObjective-Cに関するものだったので、本当に助けが必要です。
私のアプリは主に Cordova (Phonegap) で作成されているため、これらのソリューションはあまり役に立ちません。
それで、何を伝える必要がありますか:
バーコードスキャナーを起動できるシンプルなスタート画面があります。結果 (最終的には常に URL になります) は、cordova の inAppBrowser に表示されます。
「_self」で呼び出すとwindow.open()
機能しますが、私が知っている限り、スタート画面に戻るのは非常に困難です。だから私はinAppBrowserでURLを呼び出したかったので、「完了」ボタンがありますが、Xcodeは悲鳴を上げます:
「警告: プレゼンテーションの進行中に <MainViewController: 0x1ed64730> で <CDVInAppBrowserViewController: 0x1ed97060> を提示しようとしています!」
ここで、window.open() 関数を呼び出している JavaScript コード...
app.initialize();
function demoScan() {
try {
var scanned = scan();
} catch (e) {
alert('scan failed');
}
}
function scan() {
var scanner = window.cordova.require("cordova/plugin/BarcodeScanner");
scanner.scan( function (result) {
var ref = window.open(encodeURI(result.text),'_blank','location=yes');
},
function (error) {
("Scanning failed: " + error);
});
}
最後に、バーコード スキャナーが呼び出している Web ページにいるときに、開始ページ "index.html" に戻るための (単純な) 解決策だけが必要です。それがinAppBrowserを介しているか、WebViewの自己コーディングされた「戻る」ボタンを使用している場合、私は本当に気にしません.
前もって感謝します!:)