Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

Android में एप्लीकेशन हीप साइज कैसे डिटेक्ट करें?

Android ऐप का हीप साइज (मेमोरी लिमिट) पता करने का तरीका

यह उदाहरण ActivityManager.getMemoryClass() का उपयोग करके डिवाइस पर ऐप को आवंटित अधिकतम हीप मेमोरी (MB में) प्राप्त करने का तरीका दिखाता है।

चरण 1: नया प्रोजेक्ट बनाएं

Android Studio में File → New Project चुनें।

चरण 2: लेआउट फ़ाइल (res/layout/activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center"
    android:padding="8dp"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/btnHeapSize"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Detect Heap Size" />

    <TextView
        android:id="@+id/textView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24sp"
        android:textStyle="bold" />

</LinearLayout>

चरण 3: MainActivity.java

import androidx.appcompat.app.AppCompatActivity;
import android.app.ActivityManager;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import java.util.Objects;

public class MainActivity extends AppCompatActivity {
    TextView textView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView = findViewById(R.id.textView);
    }

    public void HeapSize(View view) {
        ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
        int memoryClass = Objects.requireNonNull(activityManager).getMemoryClass(); // MB में
        textView.setText("हीप साइज: " + memoryClass + " MB");
    }
}

चरण 4: AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="app.com.sample">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

अधिक विस्तृत मेमोरी जानकारी के लिए

// रनटाइम मेमोरी जानकारी
Runtime runtime = Runtime.getRuntime();
long maxMemory = runtime.maxMemory();      // अधिकतम हीप (बाइट्स)
long totalMemory = runtime.totalMemory();  // वर्तमान आवंटित हीप
long freeMemory = runtime.freeMemory();    // हीप में फ्री स्पेस

// ActivityManager से अधिक जानकारी
ActivityManager.MemoryInfo memoryInfo = new ActivityManager.MemoryInfo();
activityManager.getMemoryInfo(memoryInfo);
long availMem = memoryInfo.availMem; // सिस्टम में उपलब्ध मेमोरी

नोट

  • getMemoryClass() डिवाइस अनुसार अलग होता है (आमतौर पर 128MB से 512MB+ तक)।
  • बड़ी इमेज/वीडियो प्रोसेसिंग के लिए android:largeHeap="true" मैनिफेस्ट में जोड़ सकते हैं (सावधानी से उपयोग करें)।
  • मेमोरी लीक ढूंढने के लिए Android Profiler या LeakCanary उपयोग करें।
  1. Android में JSON कैसे पार्स करें? Android में JSON कैसे पार्स करें?

    Android में JSONObject से सरल JSON पार्स करने का गाइड यह ट्यूटोरियल दिखाता है कि कैसे एक JSON स्ट्रिंग से JSONObject बनाकर नेस्टेड ऑब्जेक्ट्स से मान निकाले जाएं। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनकर नया प्रोजेक्ट बनाएं। चरण 2: लेआउट फ़ाइल में कोड जोड़ें res/layout

  1. Android में ScrollView के अंत का पता कैसे लगाएं? Android में ScrollView के अंत का पता कैसे लगाएं?

    ScrollView स्क्रॉल अंत पहचान यह उदाहरण दर्शाता है कि ViewTreeObserver.OnScrollChangedListener का उपयोग करके ScrollView के शीर्ष या अंत तक पहुंचने का पता कैसे लगाएं। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनें। चरण 2: लेआउट में ScrollView और WebView (activity_main.xml) &l

  1. Android TextView में टेक्स्ट को जस्टिफाई कैसे करें? Android TextView में टेक्स्ट को जस्टिफाई कैसे करें?

    TextView में टेक्स्ट जस्टिफिकेशन Android 8.0 (API 26) से android:justificationMode=inter_word एट्रिब्यूट का उपयोग करके TextView में टेक्स्ट को जस्टिफाई (दोनों किनारों पर संरेखित) किया जा सकता है। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनें (न्यूनतम API 26 या अधिक)। चरण 2