2015-06-02 63 views
10

Tôi đang ở trong Android Studio và ký APK trong phần Xây dựng> Tạo APK đã ký và sử dụng thuật sĩ. Tất cả mọi thứ dường như ký tốt và một tập tin .apk được tạo ra.Android Studio Signed APK Không cài đặt

Khi tôi sao chép tệp này sang thiết bị của tôi (Nexus 7 hoặc Moto X), nó sẽ không cài đặt. Tôi nhận được thông báo "cài đặt không thành công".

Tôi không thể hiểu được điều gì đang xảy ra. Tôi đã đặt điều này .apk trong bảng điều khiển dành cho nhà phát triển Google Play trong "thử nghiệm alpha" và nó được chấp nhận tốt (tôi đang đợi liên kết thử nghiệm hoạt động để thử và tải xuống/cài đặt từ đó).

Hướng dẫn cho trình hướng dẫn tại đây (http://developer.android.com/tools/publishing/app-signing.html#studio) hiển thị trong ảnh chụp màn hình của giai đoạn cuối, danh sách thả xuống được gọi là "Loại bản dựng" được chọn để "giải phóng". Tôi không có điều đó trong phiên bản Android Studio của mình. Không có bất cứ điều gì tôi có thể tìm thấy trong thuật sĩ này sẽ cho phép tôi chỉ định một "phát hành" xây dựng.

Bất kỳ trợ giúp nào có thể cho tôi sẽ được đánh giá rất nhiều. Cảm ơn!

+0

bạn có một gói ứng dụng được ký kết và bạn cố gắng để cài đặt nó trong điện thoại của bạn (nêu Q), phải không? cho tôi biết, bạn đã gỡ cài đặt các apk trước đó khỏi thiết bị của mình (thiết bị bạn đã sử dụng trong khi thử nghiệm trên cơ sở bình thường)? – aB9

Trả lời

20

Bạn cần ở chế độ phát hành để tạo APK đã ký. Ở góc dưới bên trái của Android Studio của bạn phải là một biểu tượng hình vuông nhỏ. Click vào nó và một menu sẽ bật lên. Bây giờ chọn Build Variants và bạn sẽ nhận được một bảng với hai cột: Module và Build Variant. Phải có bản sửa lỗi được viết bên dưới Build Variant. Click vào nó và bạn sẽ nhận được một trình đơn thả xuống. Bây giờ bấm vào phát hành và Gradle sẽ bắt đầu xây dựng phiên bản phát hành. Sau khi hoàn thành, tạo APK đã ký.

+0

Tính năng này hoạt động ngay bây giờ. Cảm ơn. –

+0

Nếu tôi có nhiều phụ thuộc thì tôi phải thay đổi biến thể xây dựng cho mỗi phụ thuộc hoặc chỉ là ứng dụng * * –

+0

bạn lưu ngày của tôi –

4

muộn để các trò chơi nhưng đây là một cái gì đó ngu ngốc mà làm việc cho tôi:
tôi đã phải gỡ bỏ cài đặt các ứng dụng cho tất cả người dùng trong Cài đặt> Ứng dụng> MyApp

Nếu bạn chỉ gỡ bỏ nó đôi khi chỉ cần loại bỏ từ tài khoản của bạn và không phải thiết bị, vì vậy bạn sẽ không có phiên bản hoặc chứng chỉ không khớp khi bạn cố gắng cài đặt APK mới.

Hy vọng rằng sẽ giúp người

+0

Có, điều này phù hợp với tôi! – user3833732

+1

Chúa tể và vị cứu tinh của tôi! – Cathal

17

2 cent của tôi: với Android Studio 2.3 bạn có thể đăng một ứng dụng theo hai cách: jar chữ ký v1, v2 đầy đủ chữ ký apk. Tôi đã sử dụng tùy chọn v2 và điều này khiến ứng dụng đã ký không cài đặt trên thiết bị Android của tôi. Sau đó, tôi bỏ chọn tùy chọn v2, đã kiểm tra tùy chọn v1 và gói ứng dụng hiện cài đặt như mong đợi.

+0

Điều này đã hiệu quả. Nhưng sự khác biệt giữa hai là gì? – VickyS

+0

xem xét điều này: http://stackoverflow.com/questions/42648499/difference-between-signature-versions-v1jar-signature-and-v2full-apk-signat – edestrero

+1

hai xu của bạn rất hữu ích!điều này nên được trả lời! –

4

Có. Nếu bạn có hai tùy chọn trước khi có apk đã ký (V1 và V2), bạn nên sử dụng chữ ký V1 jar vì không có khả năng tương thích ngược và tất cả điện thoại Android có phiên bản < 7 sẽ không chấp nhận chữ ký này. Tính tương thích ngược sẽ được thêm vào trong một số Bản xem trước dành cho nhà phát triển N tiếp theo. Xem: https://developer.android.com/about/versions/nougat/android-7.0.html#apk_signature_v2

Các vấn đề liên quan