MExplorer gửi gì ra ngoài máy của bạn
Câu trả lời ngắn: thống kê sử dụng, báo cáo sự cố, và kiểm tra bản cập nhật. Không có tên tệp, không có nội dung tệp, không có đường dẫn nào trong đó.
Cái gì không bao giờ rời khỏi máy
- Tên tệp, đường dẫn, nội dung tệp. Không bao giờ, không có ngoại lệ.
- Danh sách ứng dụng đã cài, kết quả quét, nhật ký dọn dẹp. Nằm trong một cơ sở dữ liệu SQLite trong thư mục hỗ trợ của chính ứng dụng, trên máy bạn.
- Nội dung công việc của bạn. Không có kết quả quét, danh sách ứng dụng hay nhật ký dọn dẹp nào rời khỏi máy — kể cả trong lời gọi kích hoạt giấy phép.
Đây không phải lời hứa suông. Danh sách sự kiện được phép gửi là một kiểu dữ liệu đóng trong mã nguồn: mọi tham số là enum, số đếm hoặc bậc dung lượng. Không có trường nào nhận chuỗi tự do, nên chỗ để nhét một đường dẫn vào cũng không tồn tại. Một cổng chặn chạy trên mọi lần build sẽ đỏ nếu ai đó thêm một tham số kiểu chuỗi, hoặc nếu module telemetry chạm tới hệ tệp.
Cái gì có rời khỏi máy
1. Thống kê sử dụng (Firebase Analytics)
| Sự kiện |
Kèm theo |
| Mở app |
mã ngôn ngữ giao diện |
| Mở một màn hình |
tên màn hình (dọn dẹp, trùng lặp, phân tích đĩa…) |
| Dọn dẹp xong |
mức quét, số nhóm đã chọn, bậc dung lượng giải phóng |
| Kết quả bước cấp quyền |
cấp hay bỏ qua |
| Đóng màn giới thiệu |
xem hết hay dừng ở trang mấy |
| Kích hoạt giấy phép |
không kèm gì |
Dung lượng gửi theo bậc (“dưới 1 GB”, “1–10 GB”, “trên 10 GB”) chứ không theo con số thật. Một con số chính xác lặp lại qua nhiều phiên bắt đầu thành dấu vân tay của một máy cụ thể; một bậc thì không.
Firebase tự gắn thêm, ngoài tầm kiểm soát của chúng tôi: phiên bản app, phiên bản macOS, kiểu máy, quốc gia suy từ địa chỉ IP, và một mã định danh cho mỗi bản cài.
2. Báo cáo sự cố (Firebase Crashlytics)
Khi app sập: ngăn xếp lời gọi, phiên bản app, phiên bản macOS, kiến trúc máy, ngôn ngữ giao diện. Không kèm tên tệp bạn đang mở, vì báo cáo không đi qua đường dữ liệu ấy.
3. Kiểm tra cập nhật (Sparkle)
Tải một tệp XML liệt kê các phiên bản, và gói cập nhật nếu có bản mới. Máy chủ nhìn thấy những gì mọi máy chủ web đều nhìn thấy: địa chỉ IP, thời điểm, phiên bản macOS và phiên bản MExplorer. Gói cập nhật được xác thực bằng chữ ký EdDSA trước khi cài. Tắt được trong Cài đặt → Cập nhật.
4. Kích hoạt giấy phép (từ bản 1.0.3)
Chỉ xảy ra khi bạn chủ động kích hoạt một khoá trên máy này, hoặc mở danh sách máy đang dùng khoá. Không có nhịp tim: app không gọi máy chủ giấy phép theo định kỳ, và sau lần kích hoạt đầu tiên thì không gọi lần nào nữa.
- Khoá giấy phép — để tra giấy phép của bạn.
- Mã máy — để đếm đúng số máy trong gói. Đây là một mã băm một chiều của định danh phần cứng, không phải số sê-ri: máy chủ không bao giờ giữ định danh thật của máy bạn, và mã này không đối chiếu được với bản ghi của bất kỳ ai khác.
- Tên máy (“MacBook Pro của Công”) — để bạn nhận ra máy nào cần gỡ. Đây là trường duy nhất mang thông tin cá nhân mới, và không có nó thì danh sách máy chỉ là mấy dòng mã băm.
- Phiên bản macOS và phiên bản app — hỗ trợ và thống kê tương thích.
Thời hạn lưu: bản ghi kích hoạt và sổ sự kiện xoá sau 24 tháng. Bản ghi giấy phép và đơn hàng giữ lâu hơn vì chúng là chứng từ mua bán.
Không tính năng nào bị khoá khi mất mạng. Giấy phép trên máy là vĩnh viễn và được kiểm ngoại tuyến — máy chủ giấy phép ngừng hoạt động cũng không ảnh hưởng tới máy đã kích hoạt.
Bật/tắt
Thống kê sử dụng và báo cáo sự cố bật mặc định và hiện chưa có nút tắt. Đây là một quyết định thương mại, và nó trái với yêu cầu “opt-in” mà đặc tả của chính chúng tôi đặt ra. Chúng tôi ghi ra đây thay vì im lặng.
- Chặn ở tường lửa: MExplorer chỉ nói chuyện với
*.google-analytics.com, *.crashlytics.com, firebaselogging.googleapis.com, máy chủ cập nhật của MOBILUCK, và licence.code247.ai khi bạn kích hoạt giấy phép.
- Dùng bản dựng không có cấu hình Firebase. Bản dựng thiếu tệp cấu hình không gửi gì cả — đó là hành vi mặc định của mã, không phải một tuỳ chọn ẩn.
Quyền Full Disk Access dùng để làm gì
macOS bắt xin quyền này để đọc ~/Library, nơi ứng dụng cất dữ liệu. Không có nó thì ba tính năng chính — dung lượng theo ứng dụng, dữ liệu ứng dụng đã gỡ, và dọn bộ nhớ đệm — không hoạt động được, vì hệ điều hành chặn ngay từ đầu.
Quyền đó cho MExplorer đọc. Nó không được dùng để thu thập gì gửi đi: những gì đọc được từ đĩa của bạn không bao giờ đi vào các sự kiện ở trên.
Kiểm chứng lại
Bạn không cần tin trang này. Firebase gom sự kiện trong một cơ sở dữ liệu cục bộ rồi mới gửi theo lịch của nó, nên nhìn kết nối mạng một lần thường không thấy gì — điều đó không có nghĩa là app không gửi. Muốn thấy tận mắt cái đang chờ gửi, hãy mở thẳng hàng đợi trên máy bạn:
sqlite3 ~/Library/Application\ Support/Google/Measurement/google-app-measurement.sql \
"SELECT name, count(*) FROM events GROUP BY name"
Bạn sẽ thấy đúng những sự kiện trong bảng ở trên, cộng vài sự kiện tự động của Firebase. Bạn sẽ không thấy tên tệp hay đường dẫn nào, vì không có đường nào để chúng vào đó.
Cập nhật ngày 01/09/2026. Trước ngày này MExplorer không gửi gì ngoài việc kiểm tra cập nhật, và trang này viết đúng như vậy. Chúng tôi đổi phần mềm và đổi cả trang này cùng ngày, thay vì giữ nguyên lời hứa cũ.
Văn bản này được công bố bằng tất cả các thứ tiếng mà trang MExplorer nói. Bản dịch có để bạn đọc được điều khoản bằng tiếng của mình; khi một bản dịch và bản tiếng Anh khác nhau về cách hiểu, bản tiếng Anh là bản có hiệu lực. Điều này không ảnh hưởng tới quyền theo luật định của bạn ở nước bạn cư trú.