全部产品
Search
文档中心

Mobile Platform as a Service:Log performa

更新时间:Jan 27, 2026

Topik ini menjelaskan cara menambahkan log performa untuk Mobile Analysis.

Log performa untuk Mobile Analysis pada Android mencakup hal-hal berikut:

  • Log waktu startup

  • Log lag

  • Log stuck

Anda dapat masuk ke Konsol mPaaS dan memilih Mobile Analysis Service > Basic analysis untuk melihat durasi startup, serta masuk ke Konsol mPaaS dan memilih Mobile Analysis Service > Performance analysis untuk melihat laporan lag dan stuck.

Instrumentasi kecepatan startup

Durasi startup aplikasi = Waktu saat metode dipanggil – Waktu saat aplikasi dimulai.

Untuk melakukan instrumentasi kecepatan startup, panggil metode berikut dalam metode onCreate() pada Activity halaman utama.

MPLogger.reportLaunchTime(Context context);

Instrumentasi tersendat (stuttering)

Tersendat terjadi ketika thread utama Android membutuhkan waktu lebih dari 2,25 detik untuk mengeksekusi suatu metode. Ambang batas tersendat bervariasi tergantung pada jenis paket APK:

  • Jika APK adalah paket debug, ambang batas tersendat adalah 0,75 detik. Hal ini memungkinkan Anda mendeteksi potensi masalah tersendat secara cepat selama debugging.

  • Jika APK adalah paket release, ambang batas tersendat adalah 2,25 detik.

Aktifkan pemantauan tersendat

Metode 1

Untuk mengaktifkan pemantauan tersendat otomatis, antarmuka Anda harus mewarisi kelas BaseActivity, BaseFragmentActivity, atau BaseAppCompatActivity yang disediakan oleh mPaaS.

Metode 2

Penting

Metode ini hanya didukung pada baseline 10.2.3.50 dan versi setelahnya.

Anda dapat memanggil API terkait secara manual dalam metode siklus hidup Activity. Contohnya:

import android.app.Activity;
import android.app.Application;
import android.os.Bundle;

import com.mpaas.mas.adapter.api.MPLogger;

public class MPLifecycle implements Application.ActivityLifecycleCallbacks {

    private int mVisibleActivityCount = 0;
    private boolean isBackground = false;

    @Override
    public void onActivityCreated(Activity activity, Bundle bundle) {

    }

    @Override
    public void onActivityStarted(Activity activity) {
        mVisibleActivityCount++;
        if (isBackground) {
            isBackground = false;
            // Dipanggil saat aplikasi kembali ke foreground.
            MPLogger.monitorAppForeground();
        }
    }

    @Override
    public void onActivityResumed(Activity activity) {
        // Perbarui konteks Activity.
        MPLogger.monitorActivityResumed(activity);
    }

    @Override
    public void onActivityPaused(Activity activity) {
    }

    @Override
    public void onActivityStopped(Activity activity) {
        mVisibleActivityCount--;
        if (mVisibleActivityCount <= 0) {
            isBackground = true;
            // Dipanggil saat aplikasi dikirim ke background.
            MPLogger.monitorAppBackground();
        }
    }

    @Override
    public void onActivitySaveInstanceState(Activity activity, Bundle bundle) {
    }

    @Override
    public void onActivityDestroyed(Activity activity) {
    }

}

Pemantauan tersendat mengumpulkan semua data untuk APK debug. Untuk APK release, pemantauan dilakukan berdasarkan pengambilan sampel dengan laju sampel 10%.

Instrumentasi ANR

ANR biasanya terjadi ketika thread utama tidak merespons selama lebih dari 5 detik.

Untuk mengaktifkan pemantauan ANR, lihat Aktifkan pemantauan tersendat.