Android Activity 在 4.3 设备上运行缓慢

2023-12-15

我开发了一个可以从网络传输视频的应用程序。我有一个活动列出了视频,包括它们的图标、标题和状态(新更新)。每行都有一个视频缩略图、视频标题,然后有一个“新鲜”图标来指示它是新上传的。

在模拟器中,这工作得相当好。在 2.3 和 4.0.3 HTC Evo 设备中,它运行良好。在 HTC One 4.3 设备上,此活动非常慢。单击列表中的某个项目可以将您带到另一个活动,效果很好。除了列表活动之外,其他活动都可以。

这是我到目前为止所做的实验。我已经从 xml 中删除了“新鲜”图标,效果很好。所以我认为这与这个图标有关。图像相当大 (1000x900px),但仅以 50x50dp 渲染。我还没有尝试缩小该图像的尺寸来查看性能。但如果这就是问题所在,那么旧款 HTC 手机为何能够完美呈现它。

与 HTC One 和旧款 HTC 手机的唯一区别是 HTC One 有操作栏,而旧款手机使用设备中的专用菜单键。

有没有办法在设备中运行应用程序时检查内存使用情况或进程,以了解为什么速度这么慢?

更新: 我已将图像大小调整为 100x100px,而且速度肯定更快。但我仍然注意到有一些滞后。

这是该列表行的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="2dp"
    android:paddingTop="2dp" >

    <ImageView
        android:id="@+id/icon"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true" />

    <ImageView
        android:id="@+id/status"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true" />

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_marginLeft="10dp"
        android:layout_toLeftOf="@id/status"
        android:layout_toRightOf="@id/icon" />
</RelativeLayout>

尝试启动方法分析(参见图片),然后启动您的活动,然后通过再次点击图片中的相同按钮来停止方法分析。 Eclipse 将生成一个报告,您可以在其中看到哪个方法执行需要多长时间。这样您就可以找出导致延迟的方法。

enter image description here

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

Android Activity 在 4.3 设备上运行缓慢 的相关文章

  • 为什么 Android 服务在测试时不是单例的?

    当运行大量测试套件时 我注意到我的一个 Android 服务不再是单例的 Android 服务应该是单例的 但是当使用 ServiceTestCase 时 我的引用计数超过 1 在 onCreate 中递增 在 onDestroy 中递减
  • 高效秒表

    您好 我正在用 javascript 编写一个秒表实用程序 我有一个关于效率和开销的问题 我考虑过两种制作秒表的方法 1 存储开始日期并不断测量自该日期以来经过的毫秒数 2 创建一个整数并按设定的时间间隔递增其值 我想知道哪个最有效 另外
  • 如何从 Cursor 获取行 ID

    如何从游标获取行 ID 我不认为 Cursor 直接暴露了这一点 SQLiteDatabase insert 返回新插入行的行 ID 或者在 Android 中 惯例是有一个名为 id 包含表的主自动增量键 所以cursor getLong
  • Python Pandas 滚动聚合一列列表

    我有一个简单的数据框 df 和一列列表lists 我想根据以下内容生成一个附加列lists The df好像 import pandas as pd lists 1 1 2 1 2 3 3 2 9 7 9 4 2 7 3 5 create
  • 使用AndroidKeyStore身份验证的无限循环

    当我使用需要用户身份验证才能使用密钥的 AndroidKeyStore 时 我的应用程序进入无限循环 setUserAuthenticationRequired true setUserAuthenticationValidityDurat
  • 数组与列表的性能

    假设您需要一个需要频繁迭代的整数列表 数组 我的意思是非常频繁 原因可能有所不同 但可以说它位于大容量处理的最内层循环的核心 一般来说 人们会选择使用列表 List 因为它们的大小具有灵活性 最重要的是 msdn 文档声称列表在内部使用数组
  • Android:创建具有关系的 SQLite 数据库

    我正在尝试创建一个需要具有一对多关系的两个表 SQLite 数据库的应用程序 基本上 第一个表将允许用户创建一名员工 当他们点击该员工时 他们将进入第二个活动 该活动将允许用户为该员工添加多个电话号码 这些电话号码存储在第二个表中 我真的不
  • 使用 Android WebViewClient 启用特定 SSL 协议

    我的应用程序使用WebViewClient与服务器建立 SSL 连接 服务器配置为仅接受 TLSv1 1 及以上协议 使用 Android 时 如何检查哪些 SSL 协议是 a 支持的和 b 默认启用的WebViewClient在设备上 如
  • 任务执行失败 程序类型已存在

    我将这个新库包含到我的依赖项中 compile com github Triggertrap SeekArc v1 1 然后当我构建时出现构建错误 Error Exception in thread queued resource proc
  • Camera2设置预览(View)并获取预览回调

    我想从 Camera2 获取预览以及用于处理帧的 byte 回调 mImageReader ImageReader newInstance largest getWidth largest getHeight ImageFormat RAW
  • 如何在默认浏览器或webview中打开按钮点击url

    我怎样才能打开一个网址webview或者点击按钮后在默认浏览器中 目前 当我单击btn1按钮 它提示我从手机中选择一个浏览器 我想在默认浏览器或其他浏览器中打开此网址webview 这是我的java代码 public class myact
  • AdMob 插页式广告仅显示一次

    当广告在一个会话内第二次或第三次打开时 LogCat 会显示错误消息 尝试使用不同的广告管理器启动新的 AdActivity 我通过应用程序主屏幕的 on resume 方法中的意图启动插页式广告 Override public void
  • Android repo 脚本创建的 .repo/projects/ 中的裸 git 存储库的用途是什么?

    The 安卓源码 http android git kernel org 由以下人员管理repo http source android com source version control html 使用 repo 同步时 一个名为 re
  • Android NDK C++“wstring”支持

    我有用 C 编写的源代码 lib 现在我想在 Android NDK 项目 NDK 6 中编译并使用相同的源代码 lib 我能够编译大多数 C 文件 除了基于 std wstring 的功能 在 Application mk 中 当我指定时
  • Android系统每个应用程序的通知限制

    这可能偏离主题 但我找不到任何相关内容 Android应用程序可以显示的通知数量有限制吗 我在收到 100 条通知后遇到问题 没有文件明确说明这一点 注意 显示 100 条通知并不是一个好主意 但由于某些原因这是必需的 In API23 包
  • 如何使用云打印打印Android活动显示

    我正在尝试将 Google 云打印实现到应用程序中 遵循集成指南 https developers google com cloud print docs android 我试图通过打印 google com 来保持基本 单击我创建的打印按
  • mgwt - 以编程方式改变方向

    是否可以在 gwt mgwt 应用程序中更改强制执行特定的屏幕方向 可以说我希望用户始终以横向模式使用应用程序 这取决于 是作为phonegap应用程序 而不是在浏览器内部 如果您作为 Web 应用程序运行 则不需要t get any co
  • android 媒体播放器 - 如何禁用范围请求? (Nexus 7 上的音频流中断)

    我有一个音频流应用程序 它运行本地代理服务器 本地代理服务器与互联网流媒体源建立 http 连接 在本地获取并缓冲流数据 然后 在应用程序内部 我使用 MediaPlayer 连接到本地代理服务器 使用方法 mediaPlayer setD
  • 如何减少导航图标和工具栏标题之间​​的差距?

    我的问题是导航抽屉图标和工具栏标题之间 有多余的空间 示例图像如下 工具栏的xml视图是
  • Fragment 的 onSaveInstanceState() 永远不会被调用

    我试图将数据保存在片段的 onSaveInstanceState 中 但该方法从未被调用 有人可以帮忙吗 public class MyFragment extends Fragment Override public View onCre

随机推荐

  • C++ 中的逗号运算符和逗号分隔符[重复]

    这个问题在这里已经有答案了 可能的重复 all 时逗号运算符不充当逗号运算符吗 逗号 何时充当运算符 何时充当分隔符 其后果是什么 如果可能 请也为两者提供小例子 逗号在函数调用 函数声明 初始值设定项和变量声明中充当分隔符 f a b i
  • 将数据库中特定模式的所有内容授予 PostgreSQL 中的组角色

    使用 PostgreSQL 9 0 我有一个名为 staff 的组角色 并且希望向该角色授予特定模式中表的所有 或某些 权限 没有以下工作 GRANT ALL ON SCHEMA foo TO staff GRANT ALL ON DATA
  • 我如何学习如何在 bash 中正确引用?

    当我编写 bash 脚本时 我经常对引用和评估的规则感到困惑 我知道一些基础知识 比如 和 和 之间的区别 但我似乎仍然经常出错 并且不得不尝试用各种不同的方式来表达同一件事 我通常可以通过蛮力解决任何个人问题 但我认为我的概念模型必须以某
  • Windows Phone 7 - 电话呼叫连接和电话呼叫断开时触发的事件

    我正在为 Windows Mobile 7 编写一个应用程序 它需要有关 何时发出语音呼叫 和 何时挂断或断开语音呼叫 的信息 是否有任何 API 或事件 触发器可以为我提供此信息 当前的 SDK 不提供此功能 通常 由于沙盒环境默认不提供
  • FastAPI 重定向给出方法不允许错误

    我创建了一个登录路径 在其中发布表单数据并设置 cookie 设置cookie后 我重定向到 main 在那里我得到 detail Method Not Allowed 作为回应 app post login async def login
  • ViewChild - 无法在 Angular 2 RC 1 JavaScript 中工作

    ViewChild 无法在 Angular 2 RC 1 JavaScript 中工作 我用过
  • RibbonApplicationMenu:摆脱 AuxiliaryPane

    碰巧我正在开发的应用程序不对文档进行操作 因此不需要在应用程序菜单中显示最近打开的文档列表 但是 令人烦恼的是 没有现成的房产RibbonApplicationMenu隐藏未使用的类AuxiliaryPane 奇怪的是 该属性确实存在 但被
  • 单击关闭按钮时隐藏表单而不是关闭

    When a user clicks the X button on a form how can I hide it instead of closing it 我努力了this hide in FormClosing但它仍然关闭表单 L
  • Outlook 2013“运行脚本”规则已消失

    我在 Outlook 2013 中有一些工作规则 然而 在我的笔记本电脑前几天崩溃后 我无法再运行任何规则 它们根本不起作用 我什至没有收到调试通知 检查我的宏后 我发现当我尝试单击我拥有的任何脚本时 我不断收到消息 此操作在当前模式下不可
  • iOS XMPP 框架与 Openfire Server 获取所有注册用户

    for my IOS我正在使用的聊天应用程序Openfire服务器 我正在检索特定用户好友列表 但现在我想检索所有注册用户Openfire服务器 请帮助我并提前致谢 最后 我通过使用用户名搜索用户找到了替代答案 1 对于每个联系人 我都会添
  • 如何在高分辨率设备上使用媒体查询

    我制作了一个简单的响应式网站 或多或少 我使用过媒体查询 media only screen and max width 699 99px 现在我知道当分辨率小于 699 99px 时 这会激活其中的 css 所以在电脑上没问题 但在手机上
  • 散景,套索选择表更新

    我希望每个人都做得很好 我正在尝试开发 Bokeh 交互 选择散点图的一部分将更新表格 我使用了 Bokeh 文档中的大量示例代码 我的工作场所正在运行旧版本的 Bokeh 0 12 5 因此我必须更改自定义 JS 中的最后一行 从 s2
  • Pandas:使用 Append 添加新列并使另一个全为 NaN

    我大约一周前才开始学习 pandas 现在我一直在努力处理 pandas 数据框 我的数据如下所示 State NY CA Other Total Year 2003 450 50 25 525 2004 300 75 5 380 2005
  • 在 Pandas 中合并两行(一行有值,另一行 NaN)

    我知道以前也有人问过类似的问题 如何合并数据框中的两行pandas等 但我仍然在努力执行以下操作 除了包含许多行的 pandas 数据框 team token day1 day2 day3 day4 0 abc 1 NaN NaN NaN
  • 如何获取客户端 IP 地址的时区偏移量

    我想为我的网络应用程序获取客户 IP 地址的时区偏移量 我尝试过使用 Javascripts getTimezone 函数 但是 某些客户端的时区或时间设置不正确 我想获取偏移量并根据客户端的时区将一些信息返回给客户端 感谢您花时间阅读问题
  • send() 在 Ruby 中做什么?

    有人可以告诉我下面的片段是什么吗 obj send method name 是并且确实吗 send向类层次结构中的对象实例及其祖先发送消息 直到某个方法做出反应 因为它的名称与第一个参数匹配 实际上 这些行是等效的 1 send 2 1 2
  • 如何测试依赖于argparse的Python类?

    下面的粘贴包含来自三个单独的 Python 文件的相关片段 第一个是从命令行调用的脚本 它在给定某些参数的情况下实例化 CIPuller 发生的情况是脚本被调用 类似于 script py ci 其他参数将被 argparse 吞掉 第二个
  • 访问jar内的图像

    第一的 我知道已经存在各种关于如何访问 jar 文件内的图像的主题 第二 我尝试了很多选择 但没有一个不起作用 我当然知道我在某个地方犯了错误 你能帮助我理解我做错了什么吗 所以 我有一个名为 j 的原型项目 它只包含一个 java 类 C
  • 使用 Jackson 序列化时有条件地跳过对象

    我有一个像这样的课程 interface IHideable boolean isHidden class Address implements IHideable private String city private String st
  • Android Activity 在 4.3 设备上运行缓慢

    我开发了一个可以从网络传输视频的应用程序 我有一个活动列出了视频 包括它们的图标 标题和状态 新更新 每行都有一个视频缩略图 视频标题 然后有一个 新鲜 图标来指示它是新上传的 在模拟器中 这工作得相当好 在 2 3 和 4 0 3 HTC