Hiện tại tôi đang cố gắng học Gradle để tạo APK Android. Làm thế nào để thiết lập một tùy chọn trong gradle để xây dựng một APK chưa ký?Tạo APK chưa ký với Gradle
Trả lời
Bạn không cần phải cài đặt bất kỳ tùy chọn, chỉ cần chạy các nhiệm vụ thông thường:
$ gradle assemble
này sẽ tạo ra hai tập tin trong dự án/xây dựng/apk/
app-debug-unaligned.apk
app-release-unsigned.apk
Tôi sẽ dùng thử và xem. – Zul
Điều này không hiệu quả đối với tôi. Xem câu trả lời của tôi -> nó hoạt động. – owe
@rafaello: Tôi biết đã lâu rồi. Nhưng giải pháp của tôi (câu trả lời ở trên) không hoạt động nữa (Tại sao? ... Tôi không biết). Bây giờ tôi đã thử bạn giải pháp và nó đã làm việc cho tôi. Cảm ơn rất nhiều! Sai lầm tôi đã thực hiện trong thời gian trước đó là để thiết lập một signConfig trong hương vị mà tôi muốn unsigned ... Bây giờ tôi loại bỏ signConfig và tất cả mọi thứ hoạt động tốt! Nó chỉ gây phiền nhiễu cho điều này trên dòng lệnh ... – owe
Để tạo một unsigned apk thực hiện như sau:
xác định
signingConfig
với cấu hình trống như sau:signingConfigs{ unsigned{ storePassword = "" keyAlias = "" keyPassword = "" } }
xác định trong
buildTypes
cho bản phát hành của bạn với Configuration unsigned:buildTypes{ release{ signingConfig signingConfigs.unsigned } }
tôi có được điều này từ adt-dev group, nơi Xavier Ducrohet viết:
The current behavior is to check that the signing config is fully configured(*) and if it is, it generates a signed APK, otherwise an unsigned APK.
(*) fully configured right now means the value for store, alias and passwords are present, but does not include that the keystore is present.
CẬP NHẬT 2013-12-19
Vì không có lớp được đề cập, tính năng này không hoạt động với phiên bản plugin gradle 0.6.3.
Dù sao, bạn có thể tạo APK chưa được ký với gradle: chỉ cần để cho mục nhập signingConfig có thuộc tính hoặc kiểu buildType trống. Nó sẽ giống như thế này:
productFlavors{
// with this config you should get a "MyProject-flavorUnsigned-release-unsigned.apk"
flavorUnsigned{
versionCode = 9
packageName defaultPkgName
}
}
buildTypes{
// with this config you should get a "MyProject-release-unsigned.apk"
release{
packageNameSuffix '.release'
}
}
Không làm việc cho tôi nữa. Nhưng câu trả lời rafaellos khá tốt. Đã thêm bài đăng vào Nhóm nhà phát triển ADT trên G +: https: //plus.google.com/117954254390243608387/posts/N5dTMNS5UGv – owe
Điều này không hoạt động vì bản dựng sẽ thất bại cho biết không có giá trị nào được chỉ định cho các trường bắt buộc. phiên bản plugin 0.6.3 – withoutclass
@withoutclass: Quyền của bạn. Tôi đã cập nhật câu trả lời của mình và giải thích cách tạo một gói ứng dụng chưa ký với phiên bản gradle mới nhất. – owe
chỉ gán null để signingConfig
android {
buildTypes {
debug {
signingConfig null
}
}
}
By unsigned bạn có nghĩa là ngay cả với phím debug? Tại sao ? – tbruyelle
không. phiên bản phát hành nhưng chưa được ký – Zul
@tbruyelle Amazon Appstore yêu cầu apks chưa ký. – withoutclass