问题标签 [android-memory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1185 浏览

android - Android Read Jpeg from internal Storage memory

I saved a bitmap image into android internal storage. Now i want to retrieve this image that is /myphoto.jpg and share it using shareIntent. how can i read my myphoto.jpg from internal storage memory. Ideally I expect to get a file path.

0 投票
5 回答
11688 浏览

android - 读取和写入文件到可移动 sd 卡

如何在 Android 中读取和写入文件到可移动 sd 卡?

我想将 Android Id 存储在文本文件中。文本文件应在外部 sdcard 上创建。

代码:

第二个是

0 投票
3 回答
8138 浏览

android - Android 错误:java.lang.OutOfMemoryError:位图大小超出 VM 预算

我在 stackoverflow 中遇到了很多关于这个错误的问题,但没有一个找到解释我的场景的正确解决方案。

在我的 android 应用程序中,我必须允许用户单击按钮以打开图库并选择图像。然后需要将特定的选定图像加载到我的布局(UI)中的 ImageView 中。

这样做是很好的。以下是我用来实现此目的的代码。

在上传按钮中单击->

然后 onActivityResult ->

但如果用户选择更大尺寸的图像(如2MB大小),应用程序将退出并出现以下错误。但是正常(KB 级别)图像很好,想知道我可以为这个问题做些什么(处理这种错误情况)。谢谢...

错误->

0 投票
1 回答
105 浏览

android - 服务销毁后远程进程托管服务会发生什么?

我将服务绑定到应用程序上下文,该服务在单独的进程中运行(比如说#service_process)。我通过抛出未捕获的异常和应用程序的主进程(#main_proccess)停止来模拟应用程序崩溃,显然是杀死和 GCing 组件,包括主应用程序上下文。服务也未绑定(断开连接)和销毁(我调用了 Service#onDestroy())。

但是,$ adb shell ps | grep com.my_app即使在#main 进程死了之后,#service_process 仍然活着。

谁能解释这种行为的原因?如何避免“悬空”#service_process ?

0 投票
1 回答
105 浏览

android - Memory Management in the android environment

I've been looking into memory management lately, and I create a Service like this:

Which will only output the allocated memory each 5 seconds. This service is started from the my main activity. Of course the application will allocate memory, but what am worried about is the increasing memory.

I've seen in LogCat that every 5 seconds the allocated bytes increases by 80 bytes, which means 16 bytes/sec. Not very big numbers here, but it could be if the application is running "forever", or until the GC is starting. When the application starts it uses about 14 mb of memory. I should also mentioned that I've barely seen the GC_CONCURRENCE, which means that the GC is running due to low memory. Should I be worried regarding the memory in my app?

0 投票
1 回答
570 浏览

android - 分片删除后Android回收资源

我正在动态添加和删除某些片段。我的问题是,如果我删除一个片段,例如:

如何确保 Android 确实从内存中删除了这个片段及其所有资源(尤其是图像)?因为对我来说,即使片段本身从布局中删除,它也会保留在内存中,直到其父活动完成。

0 投票
1 回答
124 浏览

android - Android Tabhost - 每个选项卡中的相同视图

我有一个带有 tabhost 的活动。

在运行时,我的应用程序正在连接到数据库并拉回员工信息。我希望每个员工都有一个选项卡,其中内容以相同的方式显示,但数据不同。

我有一个 xml 视图,可用于员工信息(只是文本视图、图像等)。当我从数据库中收到新数据时,我会为每位员工执行以下操作:

  1. 将新选项卡添加到选项卡主机
  2. 夸大“员工”观点。
  3. 将 textview 文本设置为与员工对应的值。
  4. 从“员工”视图创建一个 TabSpec。
  5. 将 tabspec 添加为新选项卡。

我目前正在清除所有选项卡并在每次更改数据时进行读取,并且由于位图而导致 VM 内存不足。这是最好的方法还是有更好的方法?

0 投票
2 回答
378 浏览

android - 恢复时间内存优化

我是根据一些事实写这个问题的。比如我们不能显式地控制垃圾收集器(GC)。所以也没有办法检查 GC 何时会从我暂停的活动中获取内存。

我正在谈论的测试用例:我在 onCreate 方法中分配了许多对象,包括 HashMaps 和 ArrayLists。其中一些用于存储位图的引用。现在用户通过按主页按钮暂停活动。比我长时间执行其他任务后忘记恢复相同的任务。现在,当我回到暂停的活动时。

问题是:1)在这种情况下,是否有机会假装或假设内存 GC 将首先获取什么?

2) gc 是仅获取整个活动还是仅获取少量空闲和空对象?

3)假设在很长一段时间后说大约 5 到 6 小时用户正在恢复活动,我怎么知道有些对象是垃圾收集的。

4) 如果某些对象被垃圾回收,那么在 onResume 中检查它们是否为 null 就足以进一步访问它们。

5)在这种情况下如何处理空指针访问。

我很想听听每一个建议。谢谢你的关注。快乐编码。

0 投票
1 回答
7167 浏览

android - 我可以在位图分配中捕获 Android 中用于解码图片文件的内存不足异常吗?

我试图对图片文件解码进行捕获,但它无法捕获内存不足异常,并且应用程序崩溃了。

我知道解码图片文件的一些技巧,例如二次采样。但是我需要放大图片才能看到细节,所以我不能对它进行过多的二次采样。对于一些较新的设备,它可以成功分配更大的内存以避免内存不足的异常。

对于一些较旧的设备,它不能。

如果我可以为不同的设备定制我的应用程序,那就太好了。

所以我想:(1)我希望我能捕捉到内存不足的异常,所以如果我捕捉到它,我可以减小图像大小。(2) 或者,我希望能得到可用内存的大小进行分配。

我在网上搜索,找不到答案。

0 投票
1 回答
202 浏览

android - 在互联网不可用时重复使用列表视图中的图像和文本

我在一个活动中创建了五个带有图像和文本的水平 ListView。使用延迟加载图像概念它工作正常。现在当它离线时,列表显示为空白,即没有数据。我需要实现内存缓存概念,这样当它离线时,它将显示以前的会话数据(图像和文本)。

在 oncreate 中:我正在调用 Asynctask。在 asynctask 的 doinbackground 方法中,我正在使用包含图像和文本的 Web 服务,然后我将这些数据传递给适配器。在执行后,我将我的适配器设置为 Listview。

在适配器类:getview 方法中,我正在设置文本并使用延迟加载加载图像。

请帮我摆脱这个。提前致谢