Tôi cần nhận chữ ký gói. Vì vậy, tôi nhận được nó sử dụng mã này:Cảnh báo Android Studio khi sử dụng PackageManager.GET_SIGNATURES
Signature[] sigs = c.getPackageManager().getPackageInfo(c.getPackageName(),
PackageManager.GET_SIGNATURES).signatures;
Nhưng Android Studio mang lại cho tôi cảnh báo này:
Đọc chữ ký ứng dụng từ getPackageInfo: Chữ ký ứng dụng có thể được khai thác nếu không xác nhận đúng; xem giải thích vấn đề để biết chi tiết. ít hơn ... (Ctrl + F1) Xác thực chữ ký ứng dụng không đúng cách có thể dẫn đến các sự cố khi ứng dụng độc hại gửi tới Cửa hàng Play bằng cả chứng chỉ thực và chứng chỉ giả và truy cập vào chức năng hoặc thông tin mà nó không cần do một ứng dụng khác chỉ kiểm tra giấy chứng nhận giả mạo và bỏ qua phần còn lại. Vui lòng đảm bảo xác thực tất cả chữ ký được trả về bằng phương thức này.
có nghĩa là gì để xác nhận chữ ký trong trường hợp này? Tôi sẽ kiểm tra các chữ ký chống lại một máy chủ để đảm bảo rằng chúng khớp với nhau, đó là ý nghĩa của chúng?
Khi thử nghiệm cục bộ, tất cả các kết quả đầu ra đó là một đơn âm Integer
và không phải là array
vì mã sẽ có nó.
Tôi đã gửi [vấn đề] (http://code.google.com/p/android/issues/detail?id=221143) yêu cầu các tài liệu thực sự cho loại điều này. Tôi sẽ giả định rằng miễn là thuật toán của bạn cho "kiểm tra chữ ký" là phong nha, rằng bạn nên được OK. Nhưng, vì tôi không rõ họ đang cảnh báo gì, tôi không thể chắc chắn. – CommonsWare
Vì vậy, không ai thực sự biết cảnh báo nghĩa là gì? – Zoe