【iOSアプリ開発】UIWebViewでローカルのHTMLおよび外部JavaScriptファイルを動かす【Xcode】

スポンサーリンク

Xcode4.4.1をいじっているわけですが、いやはやツール自体の使い方すらおぼつかない状態。色々とうまくいきませんねえ・・・わからないことばかりで。

とりあえずAndroid版のHTML5で作ったゲームアプリを移植しようと頑張っております。ですが・・・ローカルに置いたHTMLやJavaScriptを動かす必要があったのですが、大苦戦。

なんとか初心者なりに調べて動いた流れを今回ご紹介します。
無駄や間違いがあるかもしれないことをあらかじめご了承ください。

【プロジェクト作成】
プロジェクトは「Single View Application」を選択して作成。

【ViewController関連を書く】
下記の記事を参考にして、「ViewController.h」と「ViewController.m」を書きます。
「UIWebViewでローカルのhtmlファイルを表示させる方法」

【HTMLファイルなどを置く】
HTMLやCSS、外部JavaScriptを「Supporting Files」に追加します。(Add Files To~)
どうもフォルダ階層をそれぞれで分けるとうまくいかないので、すべて同じ階層にしました。(importの設定次第でできるらしいのですが、具体的な方法がわからず)

で、このまま「Run」をしてもエラーが出て動きません。
エラー内容は「Warning: no rule to process file ‘$(PROJECT_DIR)/(プロジェクト名)/../../../../html/XcodeLocalTest/(ファイル名).js’ of type sourcecode.javascript for architecture i386」。意味は「JavaScriptの文法がわからない」ということみたいです。
調べてみると「JavaScriptをコンパイルしてしまい、よくわからない」ので、jsファイルをコンパイルさせないようにする必要があるようです。
参考記事:「UIWebView を使ってリソースバンドル内の HTML ファイルで、外部 JavaScript や CSS を読み込む

上記の記事だとXcodeのバージョン違いのため、やり方が少し異なります。
下記の方法で同じ形になるようです。

【xcodeprojを開き、Copy Bundle Resourcesにファイルを追加】
画面左上の青いプロジェクト名をクリックすると、(プロジェクト名)xcodeprojが開きます。

そしてその画面の「Copy Bundle Resources」「+」があるので、該当ファイルをすべてAddしてください。

これでローカルHTMLおよび外部のJavaScriptも呼び出すことができるようになります。
同じように悩んでいる方の参考になれば幸いです。


Unityアセットストア売上トップ有料アセット/新着アセット/ 当サイト「Unity」関連記事

ブログランキングに参加しています。アクセスアップにご協力いただけると幸いです。
にほんブログ村 ゲームブログ ゲーム制作へにほんブログ村 IT技術ブログ VR(バーチャルリアリティ)へにほんブログ村 その他趣味ブログ ガンプラへゲームランキングPC・ソフトランキング

コメント

  1. Stew Eucen より:

    参考になる記事をありがとうございます。

    文中のResourcesの綴りが間違っているので、
    戸惑う人がいる恐れがあるかと思います。
    修正お願いします。

    • highmix より:

      Stew Eucenさん
      参考になったようで嬉しいです。
      ご指摘いただいた綴りミスは直しました。
      ありがとうございます。

タイトルとURLをコピーしました