0

我在我的 android 项目中使用CordovaWebView 。当我运行应用程序应用程序加载捕获并显示空白 toast 消息时。在 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 回答