Hi All,
I am using following code to get free memory for Nokia 7650 device.
TMemoryInfoV1Buf info;
UserHal::MemoryInfo(info);
TInt FreeMemory = info().iFreeRamInBytes;
FreeMemory = FreeMemory / 1024; // for KB
return FreeMemory;
I have following observations,
1) the value shown by this code and the value for free memory as shown by the devices App. Manager are DIFFERENT ????//.
Am I missing something here?
2) I require this because I want to put a low memory check before my applications start / operates. Is there any standard memory limit for which I should check. Application records and plays audio in AMR format.
If I remember right the app manager tells you how much disk space you ahev left, the function in your question gives you the amount of RAM available, so different values caused by measuring different stuff.
Note that you might also wanna call compress heap function from user class before checking the RAM. You could check the efect by checking the memory then allocating something and freeing it and checking again. Then without heap compression your available memory would be different aften allocatin & freeing is done.
One more question which is confusing me.
For Nokia 7650 it has a Ram ( C and a ROM (z.
Am I right in saying that the ram is used both as storage memory and also by the running installed applications? I reckon that on this assumption the free ram calcutaion by above code should be same as shown by application manager.
Hi All,
Does anyone has any onformation for which the following devices gives the warning as "Memory too low, delete some data". for
7650, 3650, 6600 and 9210.
sorry for that badly framed question before.
Actually I wanted to know the memory limits for these devices for which it gives the LOW MEMORY warning.
Regards.
-rave_symbian
Dear All,
Has anyone found any way to get the Free DISK space on the device. I am really stuck on it. As said by yucca the Application manager gives the free disk space and the function
UserHal::MemoryInfo(info);
TInt FreeMemory = info().iFreeRamInBytes;
gives the free ram space. I carried out a few steps to verify this and founds following observations on the 7650 which might be useful to someone.
A few observations regarding the 7650 memory structure,
It has around 4092 KB of storage space and around 2500 kb of free ram used by the applications to run. 2800 kb is the figure given by the UserHal::MemoryInfo(info); function.
In case for any application / action using the storage space and during low memory conditions it gives error that memory is not enough. Though 2500 Kb of ram is available it is not used as storage space.
Any files added by a application get added in the storage memory. When the storage memory is completely filled like by saving some audio files or images then also around 2800KB of ram is free and is displayed by UserHAL::MemoryInfo(). Now when applications are started one by one this operational Ram is used up by the system.
Now when operational ram is free and freeing up the device storage space does not increase the operational ram in the same rate.
Let me know if anyone finds way to get the free disk / storage space from the device.