0

Android プロジェクトでCordovaWebViewを使用しています。アプリケーション app load catch を実行すると、空白のトースト メッセージが表示されます。logcat 内で、ファイルがアセットに存在しないというエラーが表示されます。ライブラリにjarファイルを追加し、アクティビティレイアウト内にCordovaWebViewを追加しました

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="11"
    android:orientation="vertical" >

    <org.apache.cordova.CordovaWebView
        android:id="@+id/tutorialView"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>

アセットからhtmlファイルをロードするためにこのコードを使用しました:

CordovaWebView cwv;
@Override
protected void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_course);

    try{
        cwv = (CordovaWebView) findViewById(R.id.tutorialView);
        cwv.loadUrlIntoView("file:///android_asset/test.html");
    }
    catch(Exception e)
    {
        ToastHelper.Long(e.getMessage());
    }
}

html ファイルはアセットに存在し、WebView ( CordovaWebViewではありません) を使用してロードできます。

この問題を解決するためのアイデアを教えてください。

よろしく。

4

2 に答える 2

2

index.html の場合

<!DOCTYPE HTML>

<html>

  <head>

    <meta name="viewport" content="width=320; user-scalable=no" />

    <meta http-equiv="Content-type" content="text/html; charset=utf-8">

    <title>PhoneGap Android App</title>

              <script type="text/javascript" charset="utf-8" src="cordova-2.7.0.js"></script>      


 <style type="text/css">
@font-face {
    font-family: AayatQuraan;
    src: url("file:///android_asset/fonts/AayatQuraan.ttf")
}
body {
    font-family: AayatQuraan;
    font-size: 60px;
    text-align: justify;
}
</style>
  </head>

  <body onload="init();"  >
جميل
  </body>

</html>

Java用

package com.example.hellogap;


import org.apache.cordova.DroidGap;

import android.os.Bundle;

public class MainActivity extends DroidGap {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        super.setIntegerProperty("loadUrlTimeoutValue", 60000);        
        super.loadUrl("file:///android_asset/www/index.html",1000);
    }

}

このようなものを出力=

ここに画像の説明を入力

于 2014-08-19T17:06:11.960 に答える
0

使ってみてください

cwv.loadUrl("file:///android_asset/test.html");

それ以外の

cwv.loadUrlIntoView("file:///android_asset/test.html");

これを見る

https://web.archive.org/web/20140514125044/http://www.infil00p.org/advanced-tutorial-using-cordovawebview-on-android/

于 2014-08-19T14:32:33.927 に答える