外部库会使应用程序变慢吗?

2024-04-01

我正在构建一个从网页中抓取信息的应用程序。为此,我选择使用一个名为的 html scraperJsoup http://jsoup.org/因为它使用起来非常简单。 Jsoup 还依赖于 Apache Commons Lang 库。 (它们总计 385kB)。 因此Jsoup将用于下载页面并解析它。

我的问题是,使用这些简化库而不是使用 Android 内置库是否会让我的应用程序变慢? (在下载数据和解析方面)。

我认为内部库会针对 Android 进行优化。


下一个版本jsoup http://jsoup.org/不需要 Apache Commons-Lang 或任何其他外部依赖项,这会将 jar 大小减少到 115K 左右。

在内部,jsoup 使用标准 Java 库(URL 连接、HashMap 等),这些库对 Android 进行了相当好的优化。

我花了很多时间优化 jsoup 的解析执行时间和数据提取器方法;当然,如果你找到任何改进的方法,我洗耳恭听。

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

外部库会使应用程序变慢吗? 的相关文章

随机推荐

  • 更改 HTML 数据列表自动完成行为

    我正在尝试为我正在开发的网站实现搜索自动完成功能 我正在使用 HTML 数据列表 其中的选项是从后端 MySQL 数据库动态生成的 与 AJAX 通信 但是 数据列表自动完成功能并不像我想要的那样工作 如果关键字不按顺序排列 自动完成功能似
  • 将Admob集成到Android问题

    我正在尝试将 Admob 集成到 android 但最终没有成功 该文档说需要提供 DeviceID 才能获取真实设备的广告 您能帮我解决这个问题吗 但我通过设置 AdManager TestEmulator 在模拟器中获取广告 使用 Ad
  • Common Lisp 中重置状态

    新手 Common Lisp 问题在这里 有没有办法重置环境状态 我的意思是 是否有一些命令可以使 REPL 恢复到启动后的相同状态 即取消所有变量 函数等 或者如果这不在 Common Lisp 标准中 是否有一些扩展在 SBCL 我使用
  • 来自 Yelp API 的错误请求

    灵感来自这个 Yelp 教程 https github com Yelp yelp api blob master v2 python sample py 我创建了一个脚本来搜索给定城市的所有健身房 我调整了脚本这些更新 http www
  • 将可变参数传递给 printf [重复]

    这个问题在这里已经有答案了 我想要一个辅助功能log它主要执行以下操作 log file array has d elements n 10 writes 2014 02 03 16 33 00 array has 10 elements
  • 按名称从数据框中删除列[重复]

    这个问题在这里已经有答案了 可能的重复 从 R 中的 data frame 中删除整列 https stackoverflow com questions 6286313 remove an entire column from a dat
  • 等待异步方法在 for 循环中完成

    我有一个包含三个异步方法的for循环 我想在这3个异步方法完成后进行一些处理 void getAllUsersInformations dispatch async dispatch get global queue DISPATCH QU
  • 从外部访问 while 循环内部的变量(C#)?

    我是 C 新手 我试图从这段时间起达到 MAX 的价值 这样我就可以在外面使用它 但我不能 任何人都有一些想法 提前致谢 while Condition Double MAX somecode Console WriteLine The O
  • 如何识别网站中的慢速设备?

    当为移动设备调整网页时 我总是依赖 CSS 媒体查询 最近我不再只担心屏幕尺寸 还担心许多移动设备的 javascript 引擎 一些依赖于窗口滚动或快速 DOM 转换序列的常见 javascript 效果在慢速设备上效果非常糟糕 有没有办
  • 需要解释为什么 RecyclerView.Adapter.notifyItemChanged(int position, Object Payload) 和我绑定的有效负载参数是对象列表

    RecyclerView Adapter notifyItemChanged intposition Objectpayload 其中payload是将传递给RecyclerView Adapter onBindViewHolder VHh
  • BackgroundWorker - Cancellation Pending 在 RunWorkerCompleted 中更改为 false。为什么?

    取消BackGroundWorker后 在DoWork中 CancellationPending为true 但是当他来到RunWorkerCompleted时 CancellationPending为false 我不知道我做错了什么 sta
  • 在运行时检测字节序有什么好处?

    我搜索了宏来确定机器上的字节顺序 但没有找到任何标准的处理器宏 但很多解决方案在运行时执行此操作 为什么我应该在运行时检测字节序 如果我这样做 ifdef LITTLE ENDIAN inline int swap int x do swa
  • Python Atom API:使用字典时如何设置atom var

    The Atom api https pypi python org pypi atom 0 3 6是Enaml用来实现MVC的库 更改一个原子变量 UI 就会更新 在 UI 中更改它 您的模型就会更新 我想将 Atom var 在本例中为
  • 强制“git status”在终端上输出颜色(在脚本内)

    EDIT 我想提出一个建议 解析颜色通常是一个考虑不周的想法 我想要它的部分原因是我可以解析它并在我自己的脚本输出中传递它 这是 好吧 但使用瓷器或类似的东西并自己重新构建彩色部件可能会更明智 原始问题如下 我喜欢看到颜色 因为我的脚本足够
  • 用文字初始化引用成员变量

    在下面的代码中 我使用文字初始化引用变量 class ABC public const int a ABC a 43 void newfoo printf NEWFOO d a int main ABC obj obj newfoo 该程序
  • ASP .NET CORE 2.2 JWT 和声明网站身份验证

    我有一个 net core 2 2 api 它 在成功登录时 生成一个 JWT 令牌 其中包含一个声明身份 该身份传递经过身份验证的用户的用户名 权限和角色等信息 在我的 net core 2 2 中 Web 应用程序我有一个登录机制 可以
  • 如何将 VSCode 工作区设置应用于所有子文件夹?

    我和我的团队正在一个大型仓库中工作 其中有数十个不同的项目 我们有在 VSCode 中编写文档的设置 我们希望将其应用于所有工作区子文件夹 这样 如果您打开您实际正在处理的项目所在的子文件夹 您将获得与打开 VSCode 相同的体验在根工作
  • IO 错误:网络适配器无法与 Oracle 11gR2 建立连接。与 SQL 开发人员联系

    我已按照 中提到的所有步骤 在 RedHat6 Linux 实例上安装了 Oracle 11ghttp technologylair net 2013 08 oracle 11g installation linux comment 50
  • 在 Heroku 上拉入经过身份验证的 git 存储库

    我一直在尝试在 Heroku 上引入一些经过身份验证的 git 存储库 但遇到了一些问题 理想情况下 我希望能够使用令牌解决方案在这里 https github com blog 1270 easier builds and deploym
  • 外部库会使应用程序变慢吗?

    我正在构建一个从网页中抓取信息的应用程序 为此 我选择使用一个名为的 html scraperJsoup http jsoup org 因为它使用起来非常简单 Jsoup 还依赖于 Apache Commons Lang 库 它们总计 38