如何在Android应用程序中嵌入HTML代码?

2024-06-28

我正在编写一个应用程序,需要在 Android 应用程序中嵌入 HTML 对象,我按照此处给出的教程进行操作:http://mobile.tutsplus.com/tutorials/android/android-sdk-embed-a-webview-with-the-webkit-engine/ http://mobile.tutsplus.com/tutorials/android/android-sdk-embed-a-webview-with-the-webkit-engine/并相应地修改了代码,以下是代码,但我得到了白屏......

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        WebView engine = (WebView) findViewById(R.id.web_engine);

    engine.getSettings().setJavaScriptEnabled(true);
    engine.getSettings().setPluginsEnabled(true); 
    engine.getSettings().setAppCacheEnabled(false); 
    engine.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); 

        String data = "<html>" +
                "<body>" +
                "bb"+
                "<object width=\"450\" height=\"300\" align=\"middle\"><param name=\"movie\" value=\"http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1\" /><param name=\"wmode\" value=\"transparent\"><embed src=\"http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1\" width=\"450\" height=\"300\" align=\"middle\" type=\"application/x-shockwave-flash\" wmode=\"transparent\"  FlashVars=\"gig_lt=1312323434023&gig_pt=1312325057958&gig_g=2\"/> <param name=\"FlashVars\" value=\"gig_lt=1312323434023&gig_pt=1312325057958&gig_g=2\" /></object>"+
                "gg"+
                "</body>" +
                "</html>";

        engine.loadData(data, "text/html", "UTF-8");
    }
}

我要嵌入的对象是:

<object width="450" height="300" align="middle"><param name="movie" value="http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1" /><param name="wmode" value="transparent"><embed src="http://www.raaga.com/widgets/top10/widgettopten.swf?l=H&q=1" width="450" height="300" align="middle" type="application/x-shockwave-flash" wmode="transparent"  FlashVars="gig_lt=1312323434023&gig_pt=1312326303531&gig_g=2"/> <param name="FlashVars" value="gig_lt=1312323434023&gig_pt=1312326303531&gig_g=2" /></object>

将文件放在 /assets 目录中,您可以通过 file:///android_asset/ 目录访问它。

您可以在 asset 文件夹中放置静态数据文件,例如 HTML 及其相关的 CSS、图像和 JavaScript 文件等,而不是将 html 放在代码中。然后您可以使用WebView.loadUrl() http://developer.android.com/reference/android/webkit/WebView.html#loadUrl%28java.lang.String%29。这样做的优点是不必在代码中进行 Java 字符串转义和繁琐的编辑。您将能够在您最喜欢的 Web 项目编辑器中单独创建文件,然后复制并粘贴它们。如果您需要在运行时编辑文件,您仍然可以从资产目录加载文件,并且仍然不必担心 Java 字符串转义和繁琐的编辑。然后应用编辑并传递到WebView.loadData() http://developer.android.com/reference/android/webkit/WebView.html#loadData%28java.lang.String,%20java.lang.String,%20java.lang.String%29.

为了帮助调试这个问题实施WebChromeClient.onLoadResource http://developer.android.com/reference/android/webkit/WebViewClient.html#onLoadResource%28android.webkit.WebView,%20java.lang.String%29并查看控制台消息教程 http://developer.android.com/guide/webapps/debugging.html#WebView.

不要忘记使用PackageManager.getPackageInfo() http://developer.android.com/reference/android/content/pm/PackageManager.html#getPackageInfo%28java.lang.String,%20int%29检查闪存是否可用。如果不是,您可以为用户提供以下选项:从市场下载 http://developer.android.com/guide/publishing/publishing.html#marketintent.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在Android应用程序中嵌入HTML代码? 的相关文章

随机推荐

  • AngularJS 与 Apache Tiles

    我在我的项目中使用 Spring MVC 和 AngularJS AngularJs 可以吗 routing和 ngView 被用来代替or与阿帕奇瓷砖框架 据我所知 使用 routing 和 ngView 我们创建模板并在单页应用程序中重
  • 使用 CSS2 将

    有没有一个好的跨浏览器解决方案来拆分单个 ul 分成两列 或者最好的方法仍然是使用两个相邻浮动的单独列表 我正在寻找单一的解决方案 因此如果需要替代 HTML 来支持旧版浏览器 则不允许使用 CSS3 优点 要求浏览器支持IE7 FF3 我
  • Elasticsearch 主分片不平衡

    我注意到我的 elasitcsearch 集群中有一个奇怪的行为 正如您在下面的屏幕截图中看到的 它显示了 kopf 插件 大多数主分片位于 nl 1 服务器上 我认为 elasitcsearch 在所有服务器上均匀地平衡了主分片 我错了吗
  • 如何反转 TextView 选取框的方向

    我想反转 TextView 中选取框的方向 默认情况下 文本从右向左移动 我希望它从左向右移动 我怎样才能做到这一点 我想出了一个非常简单易行的方法来做到这一点 我制作了一个选框效果 根据我们的选择向两个方向移动 所以 这里有一个技巧 我在
  • 在一项服务中引用多个 API 调用 (Angular)

    我正在通过 Angular http 请求访问 API 以收集不同足球队的信息 如果我只访问一个团队 那就没问题了 我将创建一个进行调用的服务 然后在我的控制器中引用该服务函数 但是 我希望在多个团队中执行此操作 而不必为每个团队创建单独的
  • 有没有办法调用需要 IEnumerable 且具有单个值的 C# 方法? ...通过基准测试[重复]

    这个问题在这里已经有答案了 我只是想知道我是否错过了一些语法糖或微优化 如果我调用一个需要 IEnumerable 值的方法 但我只有一个值 那么我将该单个值放入一个数组中 例如 var x 1 23 SquareAllTheNumbers
  • 在.NET Core中注入通用接口

    我想将此接口注入到我的控制器中 public interface IDatabaseService
  • 如何获取 Angular2 中元素的当前位置信息

    我有ElementRef我的导航栏 我试图找出它离我的窗口顶部有多近 这样我就可以让它粘起来 div class nav bar div ViewChild navBar navBarElement 我正在滚动事件中打印出它的 native
  • 如何确定 RecyclerView 最后一项在屏幕上可见?

    我有一个RecyclerView我将数据列表添加到RecyclerView 我想在列表中添加更多数据 最后一次RecyclerView项目在屏幕上可见 之后我想进行网络服务调用并更新RecyclerView数据 我怎样才能实现这个目标 有什
  • 有没有办法让控制台应用程序仅使用 .NET Core 中的单个文件运行?

    在 NET框架中 您可以制作一个 EXE将从命令行运行的文件 无需任何额外的配置文件 如果使用 ILMerge 您可以将所有 DLL参考文献1 EXE集会 我正在尝试使用 NET Core 来完成同样的事情 但到目前为止还没有成功 即使是最
  • 获取英汉对齐数据

    使用 TranslateArray2 我能够获取我想要的大多数语言的对齐数据 但不能获取英语到中文 zh 的对齐数据 我怎么才能得到它
  • 如何在 Mac v 10.7.2 上安装/使用 php

    我是对使用 PHP 感兴趣的普通大学生 谁能告诉我 101 如何使用简单明了的语言在 mac 版本 10 7 2 上安装 启用它 我将感谢任何和所有的帮助 Cheers 无需安装 PHP 或 Apache 它们已随 Mac 10 7 一起提
  • ios中的过滤器数组检查多个属性

    我有一系列自定义对象 自定义对象看起来像这样 interface User NSObject property nonatomic strong NSString user Id property nonatomic strong NSSt
  • 调用 GCMRegistrar.register() 时泄漏 IntentReceiver 错误

    我正在尝试完成以下入门步骤谷歌的GCM http developer android com guide google gcm gs html来自 Google 的 Android 开发者网站 当我的设备尝试注册时 由于以下原因而失败 Ac
  • 在 emacs 中移动区域或行

    我正在 emacs 中寻找一种将文本向右或向左移动的方法n空间 与 vim 中类似的功能 lt lt or gt gt 它应该在一个区域上工作 或者如果当前行上没有选择任何区域 并且不会将光标从当前位置移动 解决方案来自Emacs维基 ht
  • 如何用PHP显示分层的“NESTED SET”数据?

    我试图弄清楚如何使用 php 显示嵌套的 MySQL 数据 我已经设法搁置所有 叶节点 但后来我陷入困境 我需要显示一整棵树及其所有元素的关系 这是表格 category id name lft rgt 1 Saws 1 12 2 Chai
  • 如何从 puppeteer-sharp 中获取可读的浏览器/页面错误?

    我正在使用 puppeteer sharp 将某些页面呈现为 PDF 我想知道页面在浏览器中运行时渲染时是否存在任何问题 因此我设置了一些事件处理程序 page Error sender args gt logger LogCritical
  • 如果我不使用 multer,ExpressJS 请求正文为空

    我的 Express 应用程序遇到了这个非常奇怪的问题 我只想访问通过表单数据通过发布请求发送的 req body 数据 但不幸的是 当我尝试访问 request body 中的这些值时 我收到未定义的错误 但是什么是奇怪的是 如果我使用
  • 本地主机上的 JBoss 服务器连接被拒绝:1099

    我有一个在远程服务器上运行的 JBoss 5 0 1 GA 实例 服务器尝试启动位于同一实例上的批处理服务 但报告连接被拒绝 我发现一些网页说将本地主机地址添加到 jndi properties 但是服务器完全无法启动 错误代码 10 27
  • 如何在Android应用程序中嵌入HTML代码?

    我正在编写一个应用程序 需要在 Android 应用程序中嵌入 HTML 对象 我按照此处给出的教程进行操作 http mobile tutsplus com tutorials android android sdk embed a we