18

私はphonegapを使用してAndroidでアプリケーションを開発していますが、電話でテストすると、このエラーがApplication Error Is a directory (file:///#android_asset/www/index.html) 発生します。このエラーは、電話にインターネット接続がない場合にのみ発生します。

助言がありますか?

4

8 に答える 8

8

ここで答えを見つけました: http://dev.wavemaker.com/wiki/bin/wmdoc_6.5/PhoneGap?xpage=print#HTheconnectiontotheserverwasunsucessful28file3A2F2F2Fandroidasset2Fwww2Findexhtml29

6.1 サーバーへの接続に失敗しました (file:///android_asset/www/index.html)

WHERE: Android デバイスでアプリケーションを起動する場合。

リモート リソースを要求する index.html ファイル内に何かを配置すると、Android デバイスで上記のエラーがスローされ、アプリケーションが終了します。Weinre デバッガーは、このエラーの一般的な原因です。

解決策: リモート リソースの読み込みを index.html からアプリケーションに移動し、静かに失敗するようにします。

于 2013-03-20T22:32:15.653 に答える
4

たとえば、「index.html」の名前を「main.html」に変更し、「main.html」にリダイレクトするだけの新しい(ダミーの)「index.html」を作成するだけです。

新しい「index.html」の内容:

<!doctype html>

<html>
    <head>
        <title>Title</title>
        <script>
            window.location='./main.html';
        </script>
    </head>
    <body>      
    </body>
</html>
于 2013-06-14T07:26:59.880 に答える
1

私は答えを見つけました。

タグ内に phonegap.js を含めます<head>。ビルド時に phonegap で必要になります。

<head>
<script src="phonegap.js"></script> 
</head>

phonegap.js をダウンロードする必要はありません。必要なのは、示されているようにコードを含めることだけです。ビルド中に phonegap はそれを探し、自動的に含めます。そうでない場合、ネイティブ アプリケーションを実行すると、アプリケーションは phonegap サーバーで phonegap.js を探しますが、これには時間がかかりすぎます。最終的に、アプリケーションのロードがタイムアウトになり、表示されているエラー メッセージが表示されます。

わお!私はこれを信じることができます。私はこの問題に遭遇し、落胆し、phonegap の使用をほとんどあきらめました。ただし、以下の小見出しの下にある phonegap.js に関する Phonegap の Web サイトで読みました。

https://build.phonegap.com/docs/app-overview

「PhoneGap API に引き続きアクセスできることを確認する」

「phonegap.js を削除したら、アプリケーションが引き続き PhoneGap API にアクセスできることを確認する必要があります。

これを行うには、次の参照が index.html で作成されていることを確認してください。」

<script src="phonegap.js"></script>

これは魔法のようです。できます。

みんなで乾杯。

于 2013-11-12T00:37:12.597 に答える
0

「クイックスタートガイ」に従っていますが、同じ問題があります。しかし、私はそれを解決しました。私の問題は、ダウンロードした phonegap とそれに続く guie の間の不一致でした。

この詳細を確認する必要があります: - intex.html に正しい js スクリプト バージョンをリンクします (例: cordova-2.7.0.js) - ダウンロードした phonegab バージョンと一致する必要があります。phonegab のバージョンと、リンクされている js スクリプトが一致している必要があります。

これがお役に立てば幸いです。

于 2013-05-19T21:30:15.407 に答える
0

空白のアクセス タグを使用すると、すべての外部リソースにアクセスできます。

<access origin="*" /> - a wildcard access tag allows access to all external resource.

それ以外の場合は、特定のドメインを指定できます:

-->
    <access origin="127.0.0.1*"/> <!-- allow local pages -->
<!--
<access origin="http://phonegap.com" /> - allow any secure requests to http://honegap.com/
<access origin="http://phonegap.com" subdomains="true" /> - same as above, but including subdomains, such as http://build.phonegap.com/
<access origin="http://phonegap.com" browserOnly="true" /> - only allows http://phonegap.com to be opened by the child browser.
-->

お役に立てれば。

于 2013-03-28T18:57:17.503 に答える
-4

次を使用する必要があります。

file:///android_asset/www/index.html

URLとして

于 2013-03-20T21:54:16.573 に答える