Если грубо, то примерно вот так:
uses
Androidapi.JNI.App, Androidapi.Helpers, Androidapi.JNI.GraphicsContentViewText, Androidapi.JNI.JavaTypes,
Androidapi.JNI.Os, Androidapi.JNIBridge;
function IntArrayToJArray(const OrigArray: array of Integer): TJavaArray<Integer>;
var
I: Integer;
begin
Result := TJavaArray<Integer>.Create(Length(OrigArray));
for I := Low(OrigArray) to High(OrigArray) do
Result.Items[I] := OrigArray[I];
end;
procedure TForm3.Button1Click(Sender: TObject);
var
ActivityManager: JActivityManager;
List: JList;
Iterator: JIterator;
Process: JActivityManager_RunningAppProcessInfo;
ArrayMemoryInfo: TJavaObjectArray<JDebug_MemoryInfo>;
begin
ActivityManager := TJActivityManager.Wrap(TAndroidHelper.Context.getSystemService(TJContext.JavaClass.ACTIVITY_SERVICE));
List := ActivityManager.getRunningAppProcesses;
Iterator := List.iterator;
while Iterator.hasNext do
begin
Process := TJActivityManager_RunningAppProcessInfo.Wrap(Iterator.next);
ArrayMemoryInfo := ActivityManager.getProcessMemoryInfo(IntArrayToJArray([Process.pid]));
Memo1.Lines.Add(JStringToString(Process.processName) + ' ' + ArrayMemoryInfo[0].getTotalSharedDirty.ToString);
end;
end;
Повторюсь, это грубый, но рабочий пример. Рекомендуется доработать его перед использованием в рабочем проекте!