Quay lại blog

Charles Proxy cho việc gỡ lỗi ứng dụng di động: hướng dẫn đầy đủ về việc chặn lưu lượng và phân tích HTTP/HTTPS

Charles Proxy là công cụ mạnh mẽ để chặn và phân tích lưu lượng HTTP/HTTPS của các ứng dụng di động. Tìm hiểu cách cấu hình nó cho việc gỡ lỗi, kiểm tra và làm việc với proxy.

📅5 tháng 8, 2026
```html

Bạn khởi động ứng dụng, nhưng nó hoạt động không như mong đợi: dữ liệu không tải, quảng cáo không hiển thị, tài khoản bị cấm mà không có lý do rõ ràng. Để hiểu điều gì đang xảy ra "sau bức màn", bạn cần thấy các yêu cầu HTTP thực tế giữa ứng dụng và máy chủ. Đó chính là lý do Charles Proxy tồn tại — công cụ cho phép chặn, phân tích và thay thế lưu lượng của các ứng dụng di động trong thời gian thực.

Trong hướng dẫn này, chúng ta sẽ xem xét cách cấu hình đầy đủ Charles Proxy cho iOS và Android, làm việc với HTTPS, thay thế phản hồi từ máy chủ và tích hợp với các máy chủ proxy bên ngoài — tất cả đều không có lý thuyết thừa, chỉ có thực hành.

Charles Proxy là gì và tại sao nó cần thiết

Charles Proxy là một ứng dụng máy tính để bàn cho Windows, macOS và Linux, hoạt động như một proxy HTTP/HTTPS giữa thiết bị của bạn (smartphone, trình giả lập) và internet. Khi bạn chuyển hướng lưu lượng qua Charles, chương trình ghi lại tất cả các yêu cầu và phản hồi, cho phép bạn thấy từng byte dữ liệu mà ứng dụng gửi đến máy chủ.

Về cơ bản, Charles làm điều tương tự như DevTools trong trình duyệt Chrome — chỉ khác là dành cho các ứng dụng di động không có công cụ kiểm tra tích hợp. Điều này đặc biệt quan trọng khi bạn cần hiểu:

  • Các tham số mà ứng dụng gửi khi xác thực hoặc đăng ký tài khoản
  • Các tiêu đề (User-Agent, Device-ID, token) gửi đến máy chủ
  • Cách mà Facebook, TikTok hoặc Instagram kiểm tra thiết bị khi đăng nhập
  • Tại sao ứng dụng trả về lỗi trong một số điều kiện nhất định
  • Các dữ liệu mà thị trường gửi khi yêu cầu giá hoặc danh mục

Đối với các nhà arbitrage, Charles Proxy là công cụ tình báo: bạn có thể xem chính xác các dữ liệu fingerprint mà Facebook Ads thu thập từ thiết bị và hiểu tại sao tài khoản bị cấm ngay sau khi đăng nhập. Các chuyên gia SMM sử dụng Charles để phân tích API Instagram và TikTok, để hiểu các giới hạn và mô hình yêu cầu. Các nhà phát triển và kiểm thử sử dụng nó để mô phỏng các phản hồi từ máy chủ và kiểm tra hành vi của ứng dụng trong các tình huống không chuẩn.

Các tính năng chính của Charles Proxy:

  • Chặn lưu lượng HTTP và HTTPS (bao gồm TLS 1.3)
  • Xem nội dung của các yêu cầu và phản hồi theo định dạng dễ đọc (JSON, XML, văn bản)
  • Thay thế phản hồi từ máy chủ (Rewrite, Map Local, Map Remote)
  • Điểm dừng (Breakpoints) để chỉnh sửa thủ công các yêu cầu
  • Làm chậm kết nối để mô phỏng internet chậm
  • Ghi lại và phát lại các phiên làm việc
  • Hỗ trợ proxy bên ngoài (HTTP, SOCKS5)

Cài đặt và cấu hình ban đầu Charles Proxy

Charles Proxy được phát hành như một ứng dụng trả phí với thời gian dùng thử 30 ngày. Bạn có thể tải xuống từ trang web chính thức charlesproxy.com. Phiên bản cho macOS, Windows và Linux có cùng chức năng.

Bước 1. Cài đặt ứng dụng

Tải xuống trình cài đặt cho hệ điều hành của bạn, khởi động và làm theo quy trình cài đặt tiêu chuẩn. Sau khi khởi động, Charles ngay lập tức bắt đầu lắng nghe cổng 8888 trên máy tính của bạn. Đây là cổng mặc định mà các thiết bị sẽ chuyển hướng lưu lượng qua.

Bước 2. Kiểm tra địa chỉ IP của máy tính

Để thiết bị di động có thể kết nối với Charles, nó phải nằm trong cùng một mạng Wi-Fi với máy tính. Tìm địa chỉ IP của máy tính trong mạng nội bộ:

  • macOS: Cài đặt hệ thống → Mạng → chọn Wi-Fi → Địa chỉ IP
  • Windows: Dòng lệnh → ipconfig → Địa chỉ IPv4
  • Trong chính Charles: Trợ giúp → Địa chỉ IP cục bộ

Ghi nhớ địa chỉ này — bạn sẽ cần nó khi cấu hình proxy trên smartphone. Thông thường, nó sẽ có dạng 192.168.1.X.

Bước 3. Cho phép kết nối từ các thiết bị

Khi lần đầu tiên kết nối thiết bị di động, Charles sẽ hiển thị một hộp thoại hỏi: "Có cho phép kết nối từ IP xxx.xxx.x.x không?". Nhấn Allow. Nếu hộp thoại không xuất hiện — hãy kiểm tra xem tường lửa Windows hoặc macOS có chặn Charles không. Trên macOS, có thể cần phải cho phép rõ ràng các kết nối đến trong Cài đặt hệ thống → Bảo mật → Tường lửa.

Cấu hình Charles Proxy cho Android

Cấu hình trên Android bao gồm hai phần: chuyển hướng lưu lượng qua Charles và cài đặt chứng chỉ để giải mã HTTPS. Nếu không có chứng chỉ, bạn sẽ chỉ thấy dữ liệu đã được mã hóa — một tập hợp ký tự vô dụng.

Cấu hình proxy Wi-Fi trên Android

  1. Mở Cài đặt → Wi-Fi
  2. Nhấn và giữ mạng đã kết nối → Thay đổi mạng
  3. Bật Các tùy chọn bổ sung
  4. Trong trường Proxy, chọn Thủ công
  5. Máy chủ proxy: Địa chỉ IP của máy tính của bạn (ví dụ, 192.168.1.5)
  6. Cổng: 8888
  7. Lưu cài đặt

Sau đó, toàn bộ lưu lượng HTTP từ thiết bị sẽ đi qua Charles. Các bản ghi yêu cầu sẽ bắt đầu xuất hiện trên màn hình ứng dụng.

Cài đặt chứng chỉ Charles trên Android

  1. Trên thiết bị, mở trình duyệt và truy cập địa chỉ chls.pro/ssl
  2. Tệp chứng chỉ .pem sẽ được tải xuống
  3. Mở Cài đặt → Bảo mật → Cài đặt chứng chỉ
  4. Chọn tệp đã tải xuống và cài đặt dưới dạng Chứng chỉ CA
  5. Đặt tên bất kỳ, chẳng hạn như "Charles SSL"

Trên Android 7 và cao hơn, các ứng dụng mặc định không tin tưởng vào các chứng chỉ người dùng. Điều này có nghĩa là các ứng dụng hệ thống và hầu hết các ứng dụng bên thứ ba (Facebook, Instagram, TikTok) sẽ chặn việc chặn lưu lượng. Để làm việc với những ứng dụng như vậy, bạn cần quyền root hoặc sử dụng trình giả lập Android (ví dụ: Genymotion hoặc Android Studio Emulator) với khả năng cài đặt chứng chỉ vào kho lưu trữ hệ thống.

⚠️ Quan trọng cho Android 7+

Bắt đầu từ Android 7 (Nougat), các ứng dụng phải rõ ràng tuyên bố tin tưởng vào các chứng chỉ người dùng trong tệp network_security_config.xml. Hầu hết các ứng dụng phổ biến (Facebook Ads, Instagram) không làm điều này. Để phân tích chúng, hãy sử dụng trình giả lập có root hoặc bản dựng Android đã được sửa đổi.

Cấu hình Charles Proxy cho iOS

Trên iOS, quy trình đơn giản hơn một chút — Apple cung cấp cơ chế tiêu chuẩn để cài đặt chứng chỉ qua các cấu hình, và hầu hết các ứng dụng tôn trọng các cài đặt proxy hệ thống.

Cấu hình proxy Wi-Fi trên iPhone/iPad

  1. Mở Cài đặt → Wi-Fi
  2. Nhấn vào biểu tượng (i) bên cạnh mạng đã kết nối
  3. Cuộn xuống phần HTTP Proxy
  4. Chọn Thủ công
  5. Máy chủ: Địa chỉ IP của máy tính có Charles
  6. Cổng: 8888
  7. Xác thực: tắt (nếu không được cấu hình trong Charles)

Cài đặt chứng chỉ Charles trên iOS

  1. Trên iPhone, mở trình duyệt Safari và truy cập chls.pro/ssl
  2. Safari sẽ đề nghị cài đặt cấu hình — nhấn Cho phép
  3. Đi đến Cài đặt → Chung → VPN và quản lý thiết bị
  4. Tìm cấu hình Charles và nhấn Cài đặt
  5. Nhập mã PIN của thiết bị nếu cần
  6. Giờ đây, hãy đi đến Cài đặt → Chung → Giới thiệu về thiết bị này → Tin cậy chứng chỉ
  7. Bật công tắc bên cạnh Charles Proxy CA

Sau đó, Charles sẽ có thể giải mã lưu lượng HTTPS của hầu hết các ứng dụng iOS. Các ứng dụng có Certificate Pinning (gắn chứng chỉ) — chẳng hạn như ứng dụng ngân hàng và một số phiên bản Instagram — sẽ là ngoại lệ. Để phân tích chúng, cần phải jailbreak và các tweak đặc biệt như SSL Kill Switch.

Chặn lưu lượng HTTPS: cấu hình SSL Proxying

Ngay cả sau khi cài đặt chứng chỉ, Charles mặc định không giải mã lưu lượng HTTPS — bạn cần chỉ định rõ ràng cho các miền nào để bật SSL Proxying. Điều này được thực hiện có chủ đích để không làm quá tải giao diện với dữ liệu không cần thiết.

Cách bật SSL Proxying

  1. Trong menu Charles, chọn Proxy → Cài đặt SSL Proxying
  2. Đánh dấu Bật SSL Proxying
  3. Nhấn Thêm trong phần Bao gồm
  4. Trong trường Máy chủ, nhập * (dấu sao = tất cả các miền)
  5. Trong trường Cổng, nhập 443
  6. Nhấn OK và khởi động lại việc chặn

Bây giờ Charles sẽ giải mã lưu lượng HTTPS cho tất cả các miền. Nếu bạn quan tâm đến một dịch vụ cụ thể — hãy chỉ định miền của nó thay vì dấu sao. Ví dụ, để phân tích Instagram, nhập *.instagram.com, cho Facebook — *.facebook.com.

Những gì thấy được sau khi bật SSL Proxying

Trong bảng điều khiển bên trái của Charles, bạn sẽ thấy cây miền. Nhấp vào bất kỳ yêu cầu nào — phần bên phải sẽ mở ra thông tin chi tiết: URL, phương thức (GET/POST), tiêu đề yêu cầu, nội dung yêu cầu (nếu có) và phản hồi từ máy chủ. Các tab RequestResponse hiển thị dữ liệu dưới dạng thô hoặc dưới dạng định dạng dễ đọc (JSON, XML, HTML).

Các tiêu đề yêu cầu đặc biệt có giá trị — chính nơi đó chứa các token xác thực, định danh thiết bị, phiên bản ứng dụng và các dữ liệu khác mà các nền tảng sử dụng để xác minh. Nếu bạn thấy các tham số đáng ngờ trong các yêu cầu đến Facebook Ads hoặc TikTok — đó là bước đầu tiên để hiểu tại sao tài khoản bị cấm.

Công cụ phân tích: Breakpoints, Rewrite và Map Local

Charles không chỉ là một trình xem lưu lượng mà còn là một công cụ mạnh mẽ để sửa đổi nó. Ba công cụ chính thường được sử dụng nhất:

Breakpoints — điểm dừng

Breakpoints cho phép chặn yêu cầu hoặc phản hồi tại thời điểm nó đi qua và chỉnh sửa thủ công dữ liệu trước khi nó đến tay người nhận. Đây là một công cụ mạnh mẽ cho việc kiểm tra: bạn có thể thay đổi các tham số yêu cầu, thay thế một token khác hoặc sửa đổi phản hồi từ máy chủ.

Để thiết lập Breakpoint: nhấp chuột phải vào yêu cầu trong danh sách → Breakpoint. Bây giờ, khi ứng dụng tiếp theo gọi đến URL này, Charles sẽ tạm dừng truyền tải và mở cửa sổ chỉnh sửa. Bạn có thể thay đổi bất kỳ tham số nào và nhấn Thực hiện để tiếp tục.

Rewrite — thay thế dữ liệu tự động

Rewrite hoạt động tự động: bạn đặt quy tắc "nếu trong yêu cầu có X — thay thế bằng Y", và Charles áp dụng nó cho tất cả các yêu cầu phù hợp mà không cần sự tham gia của bạn. Điều này rất tiện lợi cho việc kiểm tra hàng loạt: ví dụ, thay đổi giá trị của một tiêu đề cụ thể trong tất cả các yêu cầu đến một miền cụ thể.

Cài đặt: Công cụ → Rewrite → Thêm → đặt tên cho bộ quy tắc → Thêm quy tắc → chỉ định loại (Header, Body, URL, v.v.), tìm kiếm cái gì và thay thế bằng cái gì.

Map Local — thay thế phản hồi bằng tệp cục bộ

Map Local cho phép thay thế phản hồi từ máy chủ bằng nội dung của tệp cục bộ. Điều này rất cần thiết cho việc kiểm tra các ứng dụng mà không có backend thực tế: bạn tạo một tệp JSON với dữ liệu cần thiết, và ứng dụng nhận được chúng thay vì phản hồi thực tế từ API.

Cài đặt: Công cụ → Map Local → Thêm → chỉ định URL để chặn và đường dẫn đến tệp cục bộ. Bây giờ mỗi yêu cầu đến URL này sẽ trả về nội dung của tệp của bạn. Điều này cho phép kiểm tra các trường hợp biên: danh sách sản phẩm trống, lỗi máy chủ 500, định dạng dữ liệu không chuẩn.

Công cụ Khi nào sử dụng Độ khó
Breakpoints Chỉnh sửa thủ công một lần yêu cầu/phản hồi Thấp
Rewrite Thay thế tự động theo quy tắc Trung bình
Map Local Thay thế phản hồi API bằng tệp cục bộ Thấp
Map Remote Chuyển hướng yêu cầu đến máy chủ khác Trung bình
Throttle Mô phỏng kết nối chậm Thấp

Cách kết nối máy chủ proxy bên ngoài qua Charles

Charles Proxy có thể hoạt động không chỉ như một công cụ chặn cục bộ mà còn như một mắt xích trung gian giữa thiết bị và máy chủ proxy bên ngoài. Điều này đặc biệt hữu ích khi bạn cần phân tích lưu lượng và chuyển hướng nó qua một địa chỉ IP cụ thể — chẳng hạn, để kiểm tra cách ứng dụng hoạt động khi kết nối từ một quốc gia khác hoặc qua IP di động.

Sơ đồ này trông như sau: Smartphone → Charles Proxy (máy tính) → Máy chủ proxy bên ngoài → Internet. Bạn thấy toàn bộ lưu lượng trong Charles, nhưng các yêu cầu lại đi qua IP cần thiết.

Cấu hình proxy bên ngoài trong Charles

  1. Mở Proxy → Cài đặt Proxy bên ngoài
  2. Đánh dấu Sử dụng máy chủ proxy bên ngoài
  3. Đối với lưu lượng HTTP: bật Web Proxy (HTTP), nhập máy chủ và cổng của proxy
  4. Đối với lưu lượng HTTPS: bật Secure Web Proxy (HTTPS), nhập cùng thông tin
  5. Nếu proxy yêu cầu xác thực — nhập tên đăng nhập và mật khẩu
  6. Nhấn OK

Charles hỗ trợ proxy HTTP và SOCKS5. Đối với SOCKS5, hãy sử dụng tab SOCKS Proxy trong cùng các cài đặt. Nếu bạn đang làm việc với proxy cư trú với việc xoay IP — mỗi yêu cầu mới sẽ đi qua một địa chỉ khác nhau, điều này rất tiện lợi để kiểm tra hành vi của các nền tảng khi thay đổi IP.

Ngoại lệ cho lưu lượng cục bộ

Nếu bạn cần một phần lưu lượng đi trực tiếp (không qua proxy bên ngoài), hãy thêm ngoại lệ vào trường Bỏ qua proxy bên ngoài cho các máy chủ sau. Ví dụ, các địa chỉ cục bộ localhost127.0.0.1 thường nên được loại trừ để không làm hỏng các dịch vụ cục bộ.

Khi nào cần proxy bên ngoài trong Charles:

  • Kiểm tra định vị địa lý của ứng dụng (nó hoạt động như thế nào từ Mỹ, Đức, Brazil)
  • Kiểm tra khả năng truy cập nội dung ở các khu vực khác nhau
  • Phân tích yêu cầu khi làm việc qua proxy di động — để hiểu cách nền tảng phản ứng với IP di động
  • Vượt qua các hạn chế khu vực khi kiểm tra

Kịch bản thực tế: arbitrage, SMM và kiểm tra ứng dụng

Hãy xem xét các nhiệm vụ cụ thể mà Charles Proxy được sử dụng trong công việc thực tế — không có lý thuyết thừa.

Kịch bản 1. Arbitrage — phân tích fingerprint Facebook Ads

Một trong những nhiệm vụ chính của nhà arbitrage là hiểu tại sao Facebook cấm tài khoản ngay sau khi đăng nhập. Charles cho phép chặn các yêu cầu đầu tiên của ứng dụng Facebook khi xác thực và xem những dữ liệu nào về thiết bị được gửi đến máy chủ Meta.

Trong các yêu cầu đến graph.facebook.com, bạn sẽ thấy các tham số như device_id, hardware_id, advertiser_id và các định danh khác. Điều này sẽ giúp bạn hiểu những dữ liệu nào cần được cô lập trong các trình duyệt chống phát hiện như Dolphin Anty hoặc AdsPower khi làm việc với nhiều tài khoản.

Cũng rất hữu ích khi chặn phản hồi từ máy chủ khi bị cấm — thường chứa mã lỗi và đôi khi lý do chặn mà Facebook không hiển thị trong giao diện ứng dụng.

Kịch bản 2. SMM — nghiên cứu API Instagram và TikTok

Các chuyên gia SMM, những người quản lý từ 10-50 tài khoản của khách hàng, thường gặp phải các giới hạn của nền tảng: Instagram giới hạn số lượng lượt thích, theo dõi và bình luận trong một giờ. Charles cho phép đo chính xác các giới hạn này bằng cách chặn các yêu cầu khi làm việc với tài khoản thủ công.

Bằng cách chặn các yêu cầu đến i.instagram.com, bạn sẽ thấy cấu trúc API: các endpoint, tham số, token xác thực. Điều này giúp thiết lập tự động hóa sao cho nó mô phỏng hành vi của người dùng thực và không bị chặn. Tương tự với TikTok — phân tích các yêu cầu đến api16-normal-c-useast1a.tiktokv.com cho thấy các tham số mà nền tảng kiểm tra.

Kịch bản 3. E-commerce — phân tích API của các thị trường

Các nhà bán hàng trên Wildberries, Ozon và Avito thường xuyên sử dụng việc theo dõi giá của đối thủ. Charles cho phép chặn các yêu cầu của ứng dụng di động của thị trường và xem qua các endpoint nào dữ liệu về giá và tồn kho được tải lên. Điều này giúp thiết lập một trình phân tích mô phỏng hành vi của ứng dụng di động — các yêu cầu như vậy dễ dàng hơn nhiều so với các yêu cầu từ trình phân tích trình duyệt.

Ví dụ, trong ứng dụng Wildberries, bạn có thể chặn các yêu cầu đến catalog.wb.ru và thấy cấu trúc chính xác của các tham số lọc và phân trang. Điều này cung cấp một mẫu sẵn có để xây dựng trình phân tích, sẽ vượt qua bảo vệ hiệu quả hơn nhiều so với việc cố gắng tái tạo các yêu cầu từ trình duyệt. Để phân tích ổn định, bạn sẽ cần proxy trung tâm dữ liệu với tốc độ cao và độ ổn định kết nối.

Kịch bản 4. Kiểm thử QA cho các ứng dụng di động

Các kiểm thử viên sử dụng Charles để kiểm tra hành vi của ứng dụng trong các tình huống không chuẩn. Với Map Local, bạn có thể thay thế phản hồi từ máy chủ bằng lỗi 500 và kiểm tra cách ứng dụng xử lý sự cố backend. Throttle cho phép mô phỏng internet chậm (3G, Edge) và kiểm tra xem ứng dụng có bị treo khi tải lâu không. Breakpoints cho phép bạn thay đổi dữ liệu thủ công và kiểm tra các trường hợp biên — chẳng hạn, điều gì sẽ xảy ra nếu máy chủ trả về một mảng trống thay vì danh sách sản phẩm.

Các vấn đề thường gặp và cách giải quyết

Khi làm việc với Charles Proxy, người mới thường xuyên gặp phải những vấn đề giống nhau. Hãy cùng xem xét những vấn đề phổ biến nhất.

Vấn đề 1: Charles hiển thị "unknown" thay vì nội dung của các yêu cầu HTTPS

Nguyên nhân: SSL Proxying chưa được bật hoặc chứng chỉ chưa được cài đặt trên thiết bị.
Giải pháp: Kiểm tra xem trong Proxy → Cài đặt SSL Proxying đã bật SSL Proxying và thêm máy chủ *:443 chưa. Đảm bảo rằng chứng chỉ Charles đã được cài đặt trên thiết bị và đã được bật hoàn toàn tin cậy (trên iOS — qua cài đặt tin cậy chứng chỉ).

Vấn đề 2: Lưu lượng không được chặn, danh sách yêu cầu trống

Nguyên nhân: Thiết bị không chuyển hướng lưu lượng qua Charles, hoặc Charles không chấp nhận các kết nối.
Giải pháp: Kiểm tra xem thiết bị và máy tính có cùng một mạng Wi-Fi không. Đảm bảo rằng trong cài đặt proxy trên thiết bị đã chỉ định đúng IP của máy tính và cổng 8888. Kiểm tra xem trong Charles đã bật chế độ chặn: Proxy → Bắt đầu ghi (hoặc nút với chấm đỏ trong thanh công cụ).

Vấn đề 3: Ứng dụng không hoạt động khi Charles được bật

Nguyên nhân: Ứng dụng sử dụng Certificate Pinning — kiểm tra không chỉ chuỗi tin cậy mà còn cả chứng chỉ cụ thể của máy chủ. Chứng chỉ Charles không khớp với mong đợi.
Giải pháp cho Android có root: Cài đặt module Magisk TrustUserCerts hoặc sử dụng Frida để vượt qua SSL Pinning. Đối với iOS có jailbreak — SSL Kill Switch 2. Không có root/jailbreak, việc vượt qua Certificate Pinning rất khó khăn.

Vấn đề 4: Charles chặn quá nhiều lưu lượng, giao diện bị lag

Nguyên nhân: Ghi lại toàn bộ lưu lượng từ tất cả các ứng dụng trên thiết bị, bao gồm cả các dịch vụ hệ thống.
Giải pháp: Sử dụng bộ lọc. Trong trường Lọc (ở dưới cùng của bảng điều khiển bên trái), nhập miền của dịch vụ bạn quan tâm. Hoặc cấu hình Kiểm soát truy cập trong Proxy → Cài đặt Kiểm soát truy cập, để Charles chỉ chấp nhận các kết nối từ các ứng dụng cụ thể qua Proxy → Cài đặt Ghi → Bao gồm/Loại trừ.

Vấn đề 5: Internet không hoạt động sau khi đóng Charles

Nguyên nhân: Trên thiết bị di động vẫn còn cài đặt proxy, nhưng Charles đã không chạy — lưu lượng không có nơi nào để đi.
Giải pháp: Luôn xóa cài đặt proxy trên thiết bị sau khi kết thúc làm việc với Charles. Đặt lại tham số proxy về trạng thái "Không" hoặc "Tắt" trong cài đặt Wi-Fi.

Vấn đề Giải pháp nhanh
HTTPS hiển thị "unknown" Bật SSL Proxying + cài đặt chứng chỉ
Danh sách yêu cầu trống Kiểm tra IP, cổng và xem Charles đang ở chế độ ghi không
Ứng dụng không mở được Certificate Pinning — cần root/jailbreak
Giao diện bị lag Thêm bộ lọc theo miền trong trường Lọc
Không có internet sau khi đóng Xóa cài đặt proxy trên thiết bị

Kết luận

Charles Proxy là một trong những công cụ hữu ích nhất cho tất cả những ai làm việc với các ứng dụng di động: bất kể là một nhà arbitrage muốn hiểu các cơ chế xác thực của Facebook Ads, một chuyên gia SMM nghiên cứu API Instagram, hay một nhà phát triển kiểm tra hành vi ứng dụng của mình trong các điều kiện không chuẩn. Việc cài đặt chỉ mất 15-20 phút, và những khả năng mà nó mở ra sau khi cấu hình rất khó để đánh giá thấp.

Điều quan trọng cần nhớ: Charles là công cụ phân tích và gỡ lỗi, không phải là công cụ ẩn danh. Để làm việc với nhiều tài khoản, kiểm tra từ các vị trí địa lý khác nhau hoặc vượt qua các hạn chế của nền tảng, cần một cấp độ bảo vệ riêng — các máy chủ proxy với các địa chỉ IP thực.

Nếu bạn đang phân tích lưu lượng của các ứng dụng di động cho arbitrage hoặc làm việc với các tài khoản trên mạng xã hội, chúng tôi khuyên bạn nên kết hợp Charles với proxy cư trú — chúng cung cấp các IP thực của người dùng tại nhà, điều này giảm thiểu rủi ro bị cấm khi kiểm tra và làm việc với các tài khoản. Đối với các nhiệm vụ mà tốc độ cao và độ ổn định quan trọng — chẳng hạn như phân tích hàng loạt API của các thị trường — các proxy trung tâm dữ liệu với thời gian hoạt động cao sẽ phù hợp.

```