Network Inspector — apa itu, prinsip kerja dan monitoring permintaan jaringan

Penulis: IT Sectr Diterbitkan: 2026-05-07 Waktu membaca: 8 mnt

Network Inspector di Android Studio adalah alat profiling bawaan yang dirancang untuk memantau dan menganalisis lalu lintas jaringan aplikasi seluler secara real-time. Menurut dokumentasi resmi Android Developers (2025), alat ini memungkinkan pelacakan waktu eksekusi permintaan, volume data yang dikirim, dan status HTTP setiap panggilan. Alat ini tidak memerlukan perubahan pada kode aplikasi dan bekerja "langsung jadi" dengan proyek apa pun di API Level 14 dan lebih tinggi.

Poin Utama

  • Network Inspector — adalah komponen Android Profiler untuk memantau permintaan jaringan dengan kemampuan melihat header dan body respons
  • Penangkapan lalu lintas terjadi secara otomatis untuk semua panggilan HTTP dari aplikasi, termasuk OkHttp, Retrofit, Ktor, dan WebView
  • Garis waktu menampilkan urutan permintaan dengan durasi, ukuran, dan status setiap panggilan
  • Tampilan detail setiap permintaan mencakup header, body permintaan dan respons, cookies, dan waktu eksekusi per tahap
  • Ekspor data dalam format HAR memungkinkan pengiriman interaksi jaringan ke rekan kerja atau penyimpanan untuk analisis selanjutnya

Apa itu Network Inspector?

Network Inspector adalah alat profiling aktivitas jaringan yang tertanam di Android Studio. Alat ini memungkinkan pengembang untuk melihat semua permintaan HTTP dan HTTPS yang dikirim oleh aplikasi secara real-time, termasuk header, body permintaan dan respons, kode status, dan durasi eksekusi. Tersedia melalui panel Android Profiler sejak Android Studio 3.0.

Tujuan dan ruang lingkup

Tugas utama Network Inspector adalah men-debug interaksi jaringan aplikasi seluler dengan server. Alat ini digunakan untuk memeriksa kebenaran data yang dikirim, menganalisis waktu respons, mencari kesalahan API, serta mendeteksi pola jaringan yang tidak optimal — misalnya, banyak permintaan saat memuat satu layar. Network Inspector bekerja di perangkat apa pun dengan API Level 14.

Kompatibilitas dan pustaka

Alat ini mendukung semua klien HTTP Android utama: OkHttp (mulai versi 2.x), Retrofit, Ktor (KMM), UrlConnection, Apache HttpClient (usang), dan WebView. Untuk OkHttp dan Retrofit diperlukan pustaka OkHttp Profiler — ditambahkan secara otomatis saat menggunakan Android Studio 4.1+. Untuk Ktor diperlukan konfigurasi interceptor terpisah.

Bagaimana Network Inspector bekerja

Network Inspector menangkap panggilan jaringan di tingkat sistem menggunakan mekanisme Profiler Agent, yang dimasukkan bersama Android Profiler. Untuk kerja yang benar diperlukan build debug aplikasi. Alat tidak mengubah kode aplikasi dan tidak memerlukan penambahan dependensi untuk fungsionalitas dasar.

Mekanisme penangkapan lalu lintas

Saat profiling dimulai, Network Inspector terhubung ke proses Debug aplikasi dan mendengarkan semua panggilan HTTP yang melalui OkHttp Client, UrlConnection, atau pustaka lain yang didukung. Setiap permintaan dicatat dengan stempel waktu, memungkinkan pembuatan garis waktu aktivitas jaringan. Untuk HTTPS, digunakan lapisan perantara sistem yang mempertahankan enkripsi selama transmisi, tetapi memungkinkan melihat konten yang didekode di dalam Studio.

Arsitektur pengumpulan data

Pengumpulan data dilakukan melalui Profiler Service Android Studio, yang berjalan di proses host terpisah. Di perangkat, berjalan agen ringan yang mengirimkan metadata permintaan melalui saluran ADB. Ini meminimalkan dampak pada kinerja aplikasi — overhead kurang dari 3% menurut data Google. Data permintaan itu sendiri (body, header) hanya dikirim saat tampilan detail aktif.

kotlin
// Menghubungkan OkHttp untuk integrasi dengan Network Inspector
val client = OkHttpClient.Builder()
    .addInterceptor(HttpLoggingInterceptor().apply {
        level = HttpLoggingInterceptor.Level.BASIC
    })
    .build()

// Network Inspector secara otomatis menangkap semua panggilan melalui client
client.newCall(Request.Builder()
    .url("https://api.example.com/data")
    .build()).execute()

Fitur utama Network Inspector

Network Inspector menyediakan seperangkat alat untuk analisis lalu lintas jaringan yang komprehensif. Setiap fitur ditujukan untuk memecahkan tugas debug tertentu — dari memeriksa header hingga menganalisis kinerja API.

Garis waktu permintaan

Layar utama Network Inspector menampilkan kronologi semua permintaan dalam bentuk garis waktu. Setiap permintaan direpresentasikan dengan bilah berwarna: hijau — respons sukses (2xx), biru — pengalihan (3xx), kuning — kesalahan klien (4xx), merah — kesalahan server (5xx). Panjang bilah sesuai dengan waktu eksekusi permintaan dari koneksi hingga penerimaan respons penuh. Ini memungkinkan identifikasi langsung permintaan lambat atau yang mengalami kesalahan.

ParameterDeskripsiContoh nilai
URLAlamat lengkap permintaanhttps://api.example.com/v2/users
MethodMetode HTTP permintaanPOST
StatusKode respons HTTP200 OK
SizeUkuran permintaan + respons dalam byte12.4 KB
TimeTotal waktu eksekusi342 ms

Tampilan detail permintaan

Saat memilih permintaan tertentu, panel detail terbuka: Headers (semua header permintaan dan respons), Request Body (body permintaan dalam format teks atau biner), Response Body (body respons dengan kemampuan format JSON), Cookies (dikirim dan diterima), Timing (pembagian waktu per fase: DNS, Connection, TLS Handshake, Request, Response).

Pemfilteran dan pencarian

Network Inspector mendukung pemfilteran permintaan berdasarkan URL, metode HTTP, kode status, dan jenis konten. Permintaan ke domain tertentu dapat dikecualikan untuk fokus hanya pada API yang diperlukan. Pencarian berfungsi di semua bidang permintaan, termasuk body dan header, yang berguna saat men-debug fungsi aplikasi tertentu. Filter gabungan memungkinkan pembuatan seperangkat aturan yang diterapkan secara otomatis setiap kali profiling dimulai.

Pengelompokan dan perbandingan permintaan

Garis waktu mendukung pengelompokan permintaan berdasarkan pola URL. Misalnya, semua permintaan berbentuk /api/v2/users/* dapat digabungkan dalam satu grup. Ini menyederhanakan analisis ketika aplikasi melakukan ratusan permintaan dalam waktu singkat. Fungsi perbandingan permintaan yang berdekatan membantu mendeteksi perubahan dalam respons server pada panggilan berulang.

Men-debug permintaan jaringan dengan Network Inspector

Penggunaan praktis Network Inspector mencakup skenario debug tipikal: memeriksa format data, mendeteksi endpoint lambat, menemukan kebocoran memori karena koneksi tidak ditutup, dan menganalisis caching.

Memeriksa struktur respons JSON

Tugas umum — memastikan server mengembalikan data dalam format yang diharapkan. Network Inspector menampilkan body respons dengan format JSON, termasuk penyorotan sintaks. Jika respons tidak dapat diurai di klien, di inspector langsung terlihat penyebabnya: bidang hilang, tipe data salah (string bukan angka), atau nesting berlebihan. Jika server mengembalikan kesalahan, inspector menampilkan struktur kesalahan dengan kode dan pesan. Untuk format biner (Protocol Buffers, gambar), ukuran dan content-type ditampilkan.

Analisis waktu eksekusi

Tab Timing membagi eksekusi permintaan menjadi fase: DNS Resolution, TCP Connection, TLS Handshake, Request Send, Response Receive. Jika total waktu melebihi 1-2 detik, berdasarkan pembagian fase dapat ditentukan penyebabnya. Misalnya, DNS panjang menunjukkan masalah dengan resolver, TLS Handshake panjang — versi protokol usang di server, Response panjang — kode server lambat atau permintaan tidak efisien dengan data berlebihan. Analisis Timing membantu mengidentifikasi kemacetan bahkan sebelum optimasi sisi server dimulai.

Menemukan permintaan duplikat

Network Inspector membantu mendeteksi permintaan redundan — misalnya, ketika setiap rotasi layar Activity memuat ulang data. Di garis waktu, rangkaian permintaan identik berturut-turut dengan jelas menunjukkan masalah. Solusinya bisa berupa caching, penggunaan ViewModel dengan penyimpanan status, atau SingleLiveEvent untuk pemuatan satu kali.

kotlin
// Cache permintaan dengan OkHttp untuk menghilangkan duplikasi
val cache = Cache(
    File(context.cacheDir, "http_cache"),
    cacheSize = 10L * 1024 * 1024 // 10 MB
)

val cachedClient = OkHttpClient.Builder()
    .cache(cache)
    .addNetworkInterceptor(CacheInterceptor())
    .build()

Keterbatasan Network Inspector dan alternatif

Meskipun memiliki kemampuan luas, Network Inspector memiliki sejumlah keterbatasan yang perlu dipertimbangkan. Untuk beberapa skenario — seperti penangkapan HTTPS dengan sertifikat yang ditandatangani sendiri atau analisis lalu lintas pustaka pihak ketiga — mungkin diperlukan alat alternatif.

Keterbatasan platform dan pustaka

Network Inspector hanya berfungsi dengan aplikasi Android dan tidak mendukung iOS. Untuk Kotlin Multiplatform (KMM) beberapa permintaan mungkin tidak ditampilkan jika dijalankan di bagian native. Beberapa pustaka — misalnya, gRPC, WebSocket (bukan HTTP), GraphQL melalui Apollo (hingga versi 3.x) — mungkin ditangkap sebagian atau sama sekali tidak tanpa konfigurasi interceptor tambahan.

Alat alternatif

Untuk analisis lalu lintas jaringan yang lebih dalam, ada solusi pihak ketiga: Charles Proxy (server proxy lengkap dengan penangkapan HTTPS), Proxyman (setara untuk macOS), Wireshark (analisis tingkat paket), Stetho by Facebook (integrasi dengan Chrome DevTools), Chucker (pustaka untuk inspeksi permintaan di dalam aplikasi). Setiap alat memiliki ceruknya: Charles dan Proxyman sangat diperlukan saat men-debug interaksi server di tahap awal pengembangan, dan Chucker — untuk mengumpulkan informasi di build tes.

AlatTipePlatformHTTPSHAR
Network InspectorBawaan Android StudioAndroidYaYa
Charles ProxyServer proxyLintas platformYaYa
ProxymanServer proxymacOS, iOSYaYa
ChuckerInspektor in-appAndroidYaTidak
WiresharkAnalis paketLintas platformTidakTidak

Pertanyaan yang sering diajukan

Mengapa Network Inspector tidak menampilkan permintaan?

Pastikan aplikasi dikompilasi dalam konfigurasi Debug dan dijalankan dengan Android Profiler terhubung. Jika menggunakan OkHttp 4.x, mungkin perlu memperbarui pustaka ke versi terbaru. Untuk Ktor, permintaan hanya ditampilkan saat menggunakan klien Ktor dengan Engine yang mendukung penangkapan.

Bisakah lalu lintas HTTPS dilihat?

Ya, Network Inspector mendukung lalu lintas HTTPS tanpa konfigurasi tambahan. Tidak seperti Charles Proxy, tidak perlu menginstal sertifikat root. Alat ini menggunakan mekanisme sistem Android Profiler untuk mendekode lalu lintas dalam sesi debug.

Bagaimana cara mengekspor data dari Network Inspector?

Network Inspector memungkinkan mengekspor data dalam format HAR (HTTP Archive). Klik tombol Export di sudut kanan atas panel. File HAR dapat dibuka di penampil HAR mana pun atau diimpor ke Charles Proxy dan Proxyman untuk analisis lebih lanjut.

Apakah Network Inspector memengaruhi kinerja aplikasi?

Menurut data Google, overhead tidak melebihi 3% saat profiling aktif. Saat Network Inspector dimatikan, tidak ada overhead. Alat ini tidak disarankan untuk digunakan di build rilis, tetapi di sesi Debug dampaknya tidak terlihat pada perangkat modern.

Apa yang harus dilakukan jika respons ditampilkan sebagai data mentah?

Jika body respons ditampilkan sebagai data mentah yang tidak terbaca, ini mungkin terkait dengan kompresi gzip atau format biner (Protocol Buffers, MessagePack). Network Inspector secara otomatis mendekode gzip. Untuk format khusus, gunakan petunjuk Content-Type di header respons.

Ringkasan

  • Network Inspector — adalah alat bawaan Android Studio untuk memantau dan men-debug permintaan jaringan secara real-time tanpa mengubah kode aplikasi
  • Penangkapan otomatis semua panggilan HTTP melalui OkHttp, Retrofit, Ktor, dan UrlConnection — alat bekerja "langsung jadi" di build Debug
  • Garis waktu dengan kode warna kode status memungkinkan deteksi langsung permintaan lambat, error, dan berulang
  • Tampilan detail setiap permintaan mencakup header, body (dengan format JSON), cookies, dan pembagian fase waktu eksekusi
  • Pembagian fase Timing (DNS, TCP, TLS, Request, Response) membantu menentukan penyebab pasti permintaan lambat
  • Ekspor ke HAR memungkinkan penyimpanan sesi untuk dikirim ke rekan kerja atau dianalisis di alat eksternal seperti Charles Proxy
  • Untuk skenario yang lebih kompleks, gunakan Charles Proxy atau Proxyman — mereka mendukung penangkapan lalu lintas di tingkat OS dan bekerja dengan iOS

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga