In Java program, we can use following codes to get the system memory info:
===============================================================
ActivityManager activityManager = (ActivityManager)
getSystemService(ACTIVITY_SERVICE);
MemoryInfo info = new MemoryInfo();
activityManager.*getMemoryInfo*(info);
===============================================================

But now, we need to get system memory info from Native C program. So, I have
to implement following codes to new "MemoryInfo" object:
===============================================================
    jclass cls = env->FindClass("android/app/ActivityManager$MemoryInfo");
    jmethodID ctor = env->GetMethodID(cls, "<init>", "()V");
    jobject *objMemoryInfo* = env->NewObject(cls, ctor);
===============================================================

Up to now, we have got the MemoryInfo's object "objMemoryInfo".


Then I need to input "*objMemoryInfo*" to "*parcelMemoryInfo*", but don't
how to convert from Parcelable to Parcel:
===============================================================
    int GET_MEMORY_INFO_TRANSACTION = IBinder::FIRST_CALL_TRANSACTION+75;

    sp<IServiceManager> sm = defaultServiceManager();
    sp<IBinder> am = sm->getService(String16("activity"));
    Parcel *parcelMemoryInfo* = *objMemoryInfo*; * //HERE: how to convert
from Parcelable to Parcel
*    Parcel reply;
    status_t ret = am->transact(GET_MEMORY_INFO_TRANSACTION, *
parcelMemoryInfo*, &reply);
===============================================================
Thanks.

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to