Lỗi 'Ứng dụng chưa được cài đặt' trên Android


424

Tôi có một chương trình làm việc trong Trình giả lập Android. Thỉnh thoảng tôi đã tạo một .apk đã ký và xuất nó sang HTC Desire của mình để kiểm tra. Tất cả đều ổn.

Trên .apk mới xuất của tôi, tôi nhận được thông báo lỗi 'Ứng dụng chưa được cài đặt' khi tôi cố gắng cài đặt .apk. Nó chạy tốt trên trình giả lập.

Vì tôi chủ yếu đã thử nghiệm trên các trình giả lập và chỉ thỉnh thoảng xuất sang điện thoại thật, tôi không chắc chắn điều này xảy ra khi nào. Nguyên nhân có thể của nó không cài đặt trên điện thoại vật lý nhưng chạy tốt trong trình giả lập là gì?

Tôi đã thử khởi động lại điện thoại và xóa .apk hiện có, không khắc phục được lỗi.


5
Khi bạn nói bạn đã xóa .apk, bạn có nghĩa là bạn đã gỡ cài đặt ứng dụng khỏi điện thoại? Nếu không, hãy gỡ cài đặt ứng dụng trước khi thử cài đặt lại.
Telmo Marques

9
Những gì TomS nói, chạy adb uninstall your.package.namevà sau đó adb install /path/to.apk. Tôi không thấy lý do tại sao điều đó sẽ không làm việc. Bạn đã thay đổi bất cứ điều gì trong thủ tục ký?
Felix

2
Bạn đã thử gỡ lỗi nó trực tiếp từ nhật thực trong thiết bị được kết nối với máy tính để xem nhật ký có nói gì thêm không?
Javi

1
Tôi đã xóa ứng dụng bằng tùy chọn gỡ cài đặt khỏi trình quản lý ứng dụng trên điện thoại.
Entropy1024

Felix. Tôi chạy thứ adb này từ đâu?
Entropy1024

Câu trả lời:


265

Chủ yếu cho điện thoại cũ

Tôi chỉ gặp phải App not installedlỗi khi cố gắng cài đặt apk trên điện thoại chạy trên 4.4.2 hay còn gọi là KitKat, nhưng bạn tôi không gặp phải lỗi này trên điện thoại của anh ấy chạy trên 6+. Tôi đã thử các giải pháp khác như xóa phiên bản cũ / gỡ lỗi của ứng dụng vì apk là phiên bản phát hành, xóa dữ liệu của ứng dụng gỡ lỗi và thậm chí xóa tất cả dữ liệu được lưu trong bộ nhớ cache của tôi. Sau đó, cuối cùng tôi nhận ra tất cả những gì tôi phải làm là chọn cả hai phiên bản chữ ký khi xây dựng apk đã ký.

nhập mô tả hình ảnh ở đây

Trước đây tôi chỉ V2 (Full APK Signature)chọn, nhưng sau khi chọn V1 Jar Signaturecũng vậy, tôi đã có thể cài đặt thành công APK đã ký trên thiết bị 4.4.2 của mình. Hy vọng điều này sẽ giúp người khác!


6
Hãy tính đến giải pháp này khi bạn có một chiếc điện thoại cũ! Tôi có Galaxy S4 mini với Android 4.4.2 và tôi quên kiểm tra "chữ ký V1" để nó không thể cài đặt trong thiết bị. Sau khi kiểm tra, apk được cài đặt như một lá bùa.
Jose Ramon Garcia

1
@JoseRamonGarcia Điều thú vị là tôi có cùng một phiên bản điện thoại và Android haha! Vui mừng vì nó đã làm việc cho bạn
Chris Gong

1
Cảm ơn bạn! Android Studio sẽ cung cấp thêm thông tin về điều này khi ký ứng dụng hoặc làm cho nó rõ ràng hơn những gì nó làm khi bạn không đánh dấuV1 (Jar Signature)
mellingijkstra

Trong trường hợp của tôi, tôi phải thêm cấu hình này vào tệp tuyên ngôn android: installLocation = "InternalOnly"
avinash kumar

1
Ban đầu tôi đã ký với v2 khi tôi gặp vấn đề. Sau đó, tôi đã ký chỉ với v1 và sau đó nó hoạt động. Tôi đang chạy sdk23 trên điện thoại của mình.
Amber

206

Đối với tôi, trên Android 9 (API 28), việc vô hiệu hóa Google Play Protect khỏi ứng dụng cửa hàng play đã phát huy tác dụng và tôi đã có thể thoát khỏi App not Installedlỗi này.

Để tắt Google Play Protect. Mở ứng dụng "Cửa hàng Play" => nhấn vào nút Menu => chọn tùy chọn "Play Protect" => Tắt tùy chọn "Quét thiết bị để tìm các mối đe dọa bảo mật".


4
mặc dù khi tôi lần đầu tiên thử cài đặt ứng dụng của mình, tôi đã được nhắc nhở bởi play bảo vệ rằng nó không thể xác minh ứng dụng này an toàn và tôi đã nhấn "cài đặt bằng mọi cách", ứng dụng vẫn không cài đặt. ghi đè này đã hoạt động
user2565663 15/2/19

Tôi không có Cửa hàng Play trong trình giả lập Android (API 28).
Jerry Dodge

3
Ngoài ra trường hợp trên Android 8 (chỉ để hoàn thành khoảng cách được báo cáo giữa 7 và 9).
Cleardemon

3
Điều này hoạt động tốt. Đừng quên hoàn nguyên các cài đặt sau khi cài đặt apk.
Ra

Cảm ơn rất nhiều, đã giải quyết vấn đề trên Xiaomi Redmi 5 Plus của tôi
Nicola Gallazzi

150

Tôi gặp vấn đề tương tự và đó là do tôi đã cố gắng cài đặt apk trên điện thoại với phiên bản trước đó của cùng một apk và cả hai apks đều không được ký cùng một chứng chỉ. Ý tôi là khi tôi sử dụng cùng một chứng chỉ, tôi có thể ghi đè cài đặt trước đó, nhưng khi tôi thay đổi chứng chỉ giữa các phiên bản, việc cài đặt là không thể. Bạn đang sử dụng cùng một chứng chỉ?


9
Vâng, đó là cùng một chứng chỉ. Tôi nghĩ rằng tôi đã có điều đó một lần trước đây. Tôi đã thử xóa ứng dụng hiện có trên điện thoại và cũng đã thử cài đặt phiên bản chưa ký. Vẫn nhận được thông báo lỗi tương tự.
Entropy1024

2
Tôi cũng gặp vấn đề tương tự (phiên bản trước đó với chứng chỉ khác) - cụ thể, tôi đã cài đặt nó một cách ngầm định để sử dụng trình gỡ lỗi. Revmoving đã giải quyết nó (không phải trường hợp của bạn, như được thấy dưới đây, nhưng đáng đăng ký tại đây)
chesterbr

11
Bài đăng này có hơn 30 câu trả lời. Những gì tôi khuyên là, Bất cứ khi nào bạn gặp phải vấn đề này, hãy quan sát nhật ký thiết bị trong khi cài đặt ứng dụng. sử dụng logcat adb. Bạn sẽ biết chính xác nguyên nhân gây ra lỗi cài đặt. đăng nhập cho vấn đề của tôi là "Gói chữ ký com.companyname.appname không khớp với phiên bản đã cài đặt trước đó; bỏ qua!"
Manikandan

Tôi đã thay đổi tên gói. va no đa hoạt động. Tôi nhận ra tôi đã thử nghiệm nhiều ứng dụng có cùng tên gói nên lỗi.
dùng30478

119

Rõ ràng có nhiều nguyên nhân của vấn đề này. Đối với tôi, tình huống là thế này: Tôi đã triển khai đến nexus 7 (thiết bị thực tế) của mình từ bên trong Android Studio (v1.3.2). Tất cả đều hoạt động tốt. Sau đó, tôi đã tạo một apk đã ký và tải lên Google Drive của mình. Sau khi ngắt kết nối nexus của tôi khỏi usb, tôi đã đi đến cài đặt / ứng dụng và gỡ cài đặt ứng dụng của mình (App1). Sau đó, tôi đã mở google drive và nhấp vào App1.apk của mình và chọn cài đặt nó (cần đảm bảo bạn đã cho phép cài đặt apks trong cài đặt). Sau đó, tôi nhận được thông báo đáng sợ "Ứng dụng chưa được cài đặt"

Giải pháp cho tôi: quay lại cài đặt / ứng dụng và cuộn mặc dù tất cả các ứng dụng và ở phía dưới là phiên bản nhạt của App1 của tôi (lưu ý App1 gốc nằm ở đầu theo thứ tự Bảng chữ cái đã bị xóa như trên). Khi nhấp vào phiên bản nhạt, nó báo "Không được cài đặt cho người dùng này". (Tôi đã thiết lập nexus của mình để có nhiều hơn một người dùng). Nhưng ở góc trên bên phải có một nút ba chấm . Tôi nhấn nút này và thông báo "Gỡ cài đặt cho tất cả người dùng" . Mà tôi đã làm và nó đã khắc phục vấn đề. Bây giờ tôi đã có thể nhấp vào App1.apk và nó đã cài đặt tốt mà không gặp lỗi.


1
Vâng, tôi đã có nhiều lý do, và đây là một trong số đó. Cảm ơn!
Alveoli

1
có cùng một vấn đề. Tôi đã kích hoạt tài khoản khách và khi xóa ứng dụng, nó không xóa khỏi tất cả người dùng.
Filip Luchianenco 16/07/2016

2
Điều đó thực sự hữu ích và tôi đã cài đặt - gỡ cài đặt ứng dụng của mình trong khoảng 20 lần trước khi tôi tìm thấy ứng dụng này. Cảm ơn rất nhiều! :-)
Rahul Arora

3
Nếu chỉ có StackOverflow, hãy để chúng tôi nâng cấp nhiều lần. Giải pháp này đã giúp tôi gần một năm trước. Tôi ủng hộ và nhanh chóng quên nó. Có vấn đề tương tự ngày hôm nay và nó đã giúp tôi một lần nữa. Đã thử với upvote và StackOverflow cho biết tôi đã có. Ồ tốt
Glenn

2
Cảm ơn. Tôi cũng gặp vấn đề này. Điều này hoàn toàn không rõ ràng, lần đầu tiên, việc gỡ cài đặt ứng dụng chỉ thực hiện cho người dùng đang hoạt động hiện tại. Để tránh đi vào cài đặt mỗi lần, tôi sử dụng lệnh adb uninstall your.package.namegỡ cài đặt cho tất cả người dùng.
Xavier

61

Tôi gặp phải vấn đề khi cập nhật Android từ 2.3.2 lên 3.0.1. Nếu đây là trường hợp, IDE sẽ tự động xem xét các điểm sau.

1.Bạn không thể cài đặt ứng dụng với Android: testOnly = "true" bằng các cách thông thường, chẳng hạn như từ trình quản lý tệp Android hoặc từ bản tải xuống của trang Web

2.Android Studio thiết lập android: testOnly = "true" trên APK được chạy từ

nếu bạn chạy ứng dụng của mình trực tiếp kết nối thiết bị với hệ thống của mình, apk sẽ cài đặt và chạy không có vấn đề gì.

nếu bạn đã gửi apk này bằng cách sao chép từ thư mục xây dựng và gỡ lỗi, nó sẽ không bao giờ cài đặt trong thiết bị.

Giải pháp : đi Xây dựng ---> Xây dựng APK (s) ---> sao chép chia sẻ tệp apk vào nhóm của bạn

sau đó vấn đề của bạn sẽ giải quyết.


1
Bạn đã lưu công việc của tôi! Cảm ơn bạn!
img.simone

1
Ôi Chúa ơi, tôi đã mất 3 giờ ..
cuddlemeister

Nó hoạt động! Cảm ơn bạn!
Peter

1
Đây là điều này ngay tại đây là câu trả lời cho tôi. Thật khó chịu khi điều đơn giản này không được nhận ra một cách trắng trợn trong chương trình hoặc thông qua bất kỳ thông báo lỗi nào trên thiết bị. cảm ơn người đàn ông
LFMekz

29

Tôi phải đối mặt với cùng một vấn đề. Vấn đề là hoạt động chính trong tệp AndroidManifest.xml của tôi đã được viết hai lần. Tôi đã xóa bản sao.


Cảm ơn các gợi ý! Trong trường hợp của tôi android:exportedđược đặt thành false cho hoạt động launcher
ildar ishalin

21

Điều này có thể xảy ra nếu bạn đã khai báo MainActivity hai lần trong AndroidManifest.xml.

Một lý do khác có thể: bạn đã thay đổi hoạt động khởi chạy. Gợi ý: không bao giờ làm điều đó với các ứng dụng đã được công bố! Lý do thảo luận trong blog Nhà phát triển Android .


4
1 android:namethuộc tính của bất kỳ Activity, Service, BroadcastReceivervà vân vân không thể thay đổi trong file manifest. Mặc dù có vẻ như là định danh riêng tư trong ứng dụng của bạn, nhưng đó là API công khai.
caw

Tôi phải thay đổi hoạt động khởi chạy của mình, tôi đã thêm một màn hình giật gân và bên trong nó tôi phải tải xuống các nguồn cấp dữ liệu trước khi bắt đầu hoạt động chính. Bạn có giải pháp nào cho nó ngoài việc đặt màn hình giật gân bên trong hoạt động chính không?
Chris Sim

2
Bạn có thể sử dụng thẻ <Activity-alias> để xử lý việc đó!
thiagolr


14

Tôi đã có cùng một vấn đề và đây là cách giải quyết: Chuyển đến tệp Manifest và đảm bảo rằng bạn có các thuộc tính "Chỉ có thể gỡ lỗi" và "Chỉ kiểm tra" được đặt thành sai. Nó làm việc cho tôi :)


2
Không chắc chắn ý của bạn là 'Chỉ kiểm tra' nhưng đặt gỡ lỗi thành đúng và ký apk hoạt động với tôi!
ingh.am

đã không làm việc cho tôi. Tôi đã sử dụng:android:testOnly="false" android:debuggable="false"
Francisco Corrales Morales

bạn có thể giải thích? Tôi không có thuộc tính nào cả, không đặt đúng và không sai, chỉ là không có. Làm thế nào để dòng trông?
pashute

14

Đối với những người đang sử dụng Android Studio 3.

Câu trả lời của Suryanarayana Reddy là đúng khi nghĩ rằng nó không nêu các bước để giải quyết nó, do đó.

trong AndroidManifest.xml của bạn dưới thẻ ứng dụng thêm testOnly="false"android:debuggable="true"thích như vậy:

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme"
    android:testOnly="false"
    android:debuggable="true"
    >

Chỉnh sửa
sau đó trong thanh thực đơn của AndroidStudio Build> Build APK (s)


Cảm ơn! android:debuggable="true"dẫn đến Error: Avoid hardcoding the debug mode; leaving it out allows debug and release builds to automatically assign one [HardcodedDebugMode]. Tôi đã thử android:testOnly="false", cả Build > Build Bundl(s) / APK(s) > Build APK(s)Build > Generate SignedBundle APK...với các phiên bản chữ ký v1, v2 (như trong ảnh chụp màn hình trên cùng). Phải xóa ứng dụng trước đó, sau đó cài đặt ứng dụng mới.
CoolMind

Gần đây gặp phải vấn đề này. Chỉ cần thêm android: testOnly = "false" và Build -> Build Apks và thực hiện. Tất cả được sắp xếp. Cảm ơn! Không cần thêm bất kỳ thuộc tính Android nào khác như android: debuggable = "true".
androidStud

12

Tôi biết đây là một bài viết cũ, nhưng đối với người dùng mới có thể hữu ích. Tôi đã có cùng một vấn đề: ứng dụng của tôi hoạt động tốt trong khi gỡ lỗi. Khi tôi ký APK, tôi nhận được thông báo tương tự: "Ứng dụng chưa được cài đặt".

Tôi đã sửa lỗi gỡ cài đặt JDK của mình (tôi đang sử dụng jdk-6u14-windows-x64) và cài đặt một cái mới (jdk-6u29-windows-x64). Sau khi xuất và ký lại APK, mọi thứ đều ổn!

Tiếp tục, vấn đề của tôi là ở phiên bản JAVA. Cảm ơn Oracle !!


Điều này đã sửa nó cho tôi ... thêm thông tin stackoverflow.com/questions/6282169/ Khăn
Greg Enni

2
Điều đó là vô cùng kỳ lạ. Đây có phải là cho một trình giả lập hoặc thiết bị?
Joe Plante

12

Vấn đề của tôi là tôi có nhiều tài khoản người dùng trên thiết bị. Tôi đã xóa ứng dụng trên 1 tài khoản, nhưng nó vẫn được cài đặt trên tài khoản kia. Do đó, không gian tên đã va chạm và không cài đặt. Gỡ cài đặt ứng dụng khỏi tất cả người dùng đã sửa nó cho tôi.


2
Từ Trình quản lý ứng dụng, chọn ứng dụng (sẽ hiển thị nhưng được liệt kê là đã gỡ cài đặt), chọn Thêm và tùy chọn Gỡ cài đặt cho tất cả người dùng sẽ xuất hiện.
Casey Murray

8

Vấn đề của tôi là: Tôi đã sử dụng Apug Debug, được tạo trong khi tôi thực hiện lệnh Run từ Android Studio

Giải pháp là: Thay vì sử dụng tệp này, hãy dọn sạch dự án và nhấp vào Build> Build APK từ Android Studio. Sau đó, bạn có thể sử dụng APK được tạo từ thư mục thông thường (ứng dụng / bản dựng / đầu ra / apk / gỡ lỗi /)

Các tập tin được tạo như thế này được cài đặt mà không có vấn đề.


7

Nếu ứng dụng không được cài đặt, hãy xóa tập tin .android_secure/smdl2tmpl.asec khỏi thẻ SD.

Nếu thư mục .android_securetrống trong trình quản lý tệp, hãy xóa nó khỏi PC.


5

Cuối cùng, tôi phát hiện ra rằng không có ứng dụng nào được cài đặt thành công, không chỉ riêng tôi. Tôi đặt mặc định Cài đặt ứng dụng từ thẻ SD thành Tự động. Điều đó đã sửa nó.


1
Làm thế nào để bạn làm điều này? Tôi hoàn toàn không tìm thấy tùy chọn này trên thiết bị của mình
SoulRayder

Huawei P8 Lite, Android 6.0, chỉ có: Nâng cao / Mem & lưu trữ / vị trí mặc định: Internal / SDCard Nó không giúp được gì.
kaay

5

Nếu bạn có phiên bản trước cho ứng dụng đó, hãy thử xóa nó trước, bây giờ vấn đề của tôi đã được giải quyết bằng phương pháp đó.


5

Tôi cũng đã giải quyết vấn đề này,

Vấn đề là tôi đã khai báo hoạt động chính của mình hai lần, Bật là hoạt động đầu tiên để tải và tôi cũng chỉ định một bộ lọc ý định cho nó Và một lần nữa bên dưới nó tôi lại khai báo lại.

Chỉ cần đảm bảo rằng bạn không khai báo các hoạt động của mình hai lần.


NẾU bạn khai báo hoạt động của mình hai lần trong Manifest.xmltệp, một lỗi biên dịch sẽ hiển thị trừ khi bạn có cùng hoạt động có cùng tên nhưng trong các gói khác nhau NHƯNG điều này không hoạt động với tôi khi tôi kiểm tra mọi thứ.
blucare

5

tạo tập tin kho khóa thông qua dòng lệnh

keytool -genkey -alias key_file_name.keystore -keyache RSA -valid 1000000000000000 -keystore key_file_name.keystore

xuất apk thông qua Eclipse, nhấp chuột phải vào dự án Android Công cụ Android> Xuất gói ứng dụng đã ký , sau đó cung cấp vị trí và mật khẩu kho khóa.

điều này sẽ đóng gói apk đã ký cùng lúc apk sẽ được nén. Và có thể cài đặt.

Nếu bạn đi qua dòng lệnh cho tất cả, đôi khi bạn có thể gặp phải lỗi "Ứng dụng chưa được cài đặt". (Lỗi ứng dụng không được cài đặt có thể xảy ra không chỉ, khi sử dụng dòng lệnh. Nó cũng có thể là một số lý do khác)


4

Tôi gặp vấn đề tương tự, tức là Ứng dụng hiển thị như đã được cài đặt, nhưng sẽ không khởi chạy khi biểu tượng được gõ. Sau một vài lần đập đầu, tôi thấy rằng tôi đã ngu ngốc đặt 'android: export = "false"' cho hoạt động trình khởi chạy chính của mình trong tệp AndroidManifest .... Khi tôi gỡ bỏ nó, Ứng dụng đã khởi chạy tốt ..


4

Vấn đề của tôi tương tự như của @Lunatikzx. Do thẻ cấp phép sai được viết là thuộc tính cho ứng dụng:

<application
    android:permission="android.permission.WRITE_EXTERNAL_STORAGE"
    android:label="@string/app_name"
    android:icon="@drawable/ic_launcher"
    android:testOnly="false"
    android:debuggable="true">

Điều đã sửa nó cho tôi là thay đổi thẻ quyền thành thẻ riêng biệt như thế này:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

4

Các ứng dụng gỡ lỗi để thử nghiệm trên điện thoại thực đã hoạt động đáng tin cậy cho đến khi tôi nâng cấp điện thoại từ Android Pie lên Android 10. Sau đó, lỗi "Ứng dụng không được cài đặt" xuất hiện mỗi khi tôi cố gắng tải ứng dụng.

Dựa trên một cảnh báo trong AndroidManifest.xml của tôi, tôi đã thay đổi từ ...

<application
    android:name=".App"
    android:allowBackup="true" ... />

đến...

<application
    android:name=".App"
    android:allowBackup="false" ... />

Sau đó, tôi đã có thể tải ứng dụng của mình - một lần. Sau đó, tôi gặp lại lỗi "Ứng dụng chưa được cài đặt". Bằng cách thay đổi allowBackuptrở lạitrue , nó hoạt động trở lại (ít nhất một lần).

Rõ ràng từ số lượng câu trả lời và sự thay đổi trong câu trả lời rằng có nhiều lý do cho vấn đề này. Tôi đang chia sẻ điều này trong trường hợp nó giúp người khác.


Tôi chỉ cố gắng thiết lập android:allowBackup="true"để android:allowBackup="false"và vẫn không có may mắn.
KRK

3

Kiểm tra với phiên bản Android.

Nếu bạn đang cài đặt các ứng dụng phi thị trường và phiên bản không tương thích, bạn sẽ gặp lỗi này.

Ví dụ: Ứng dụng được nhắm mục tiêu đến 2.3.4 Thiết bị của bạn là 2.2 Sau đó, bạn sẽ gặp lỗi này.


Tôi thấy phiên bản đích của android ở đâu trong tập tin cấu hình? Tôi không thấy nó trong build.gradletập tin tệp kê khai Android. Trừ khi compileSdkVersion(giá trị 23) hoặc minSdkVersion(16) hoặc targetSdkVersion(22) bằng cách nào đó chỉ vào cài đặt mong muốn. Thiên hà của tôi đang chạy Android 7.0 (và yêu cầu cập nhật nhưng tôi chưa cho phép). Tôi không sử dụng studio android để xây dựng ứng dụng gốc phản ứng của mình mà thaygradlew assembleRelease
pashute

3

Lỗi "Ứng dụng chưa được cài đặt" cũng có thể xảy ra nếu ứng dụng đã được cài đặt hoặc di chuyển sang thẻ SD và sau đó cáp USB đã được kết nối, khiến thẻ SD bị ngắt kết nối.

Tắt bộ nhớ USB hoặc chuyển ứng dụng trở lại bộ nhớ trong sẽ khắc phục sự cố trong trường hợp này.


3

Tôi cũng gặp phải vấn đề này. Vui lòng thử giải pháp này. Đảm bảo rằng tên gói của dự án của bạn khác với dự án trước đó đã được cài đặt trong điện thoại di động của bạn. Tôi nghĩ rằng họ nhận được xung đột trong tên của họ. Nó hoạt động trong tôi.


2
Điều đó sẽ hoạt động nhưng không có giải pháp tốt nhất vì bạn sẽ kết thúc với hàng triệu ứng dụng được cài đặt. Xem một số câu trả lời khác ở trên.
Gấu Astra

3

Bạn cũng có thể gặp phải sự cố này vì nhà sản xuất thiết bị của bạn không cấp phép cho các ứng dụng thương mại của Google, như Play Store, YouTube, Google Maps, v.v. câu trả lời này để giải quyết vấn đề.


3

Rõ ràng điều này cũng có thể được gây ra bằng cách đổi tên APK trước khi cài đặt nó. Tôi muốn giảm số lượng người dùng phải gõ để tải ứng dụng từ trang web của chúng tôi bằng cách rút ngắn tên tệp. Sau đó, họ không thể cài đặt nó.

Khi tôi trở lại tên tệp gốc được sử dụng khi tạo và ký gói, tôi có thể cập nhật ứng dụng đã cài đặt.


Tôi nghĩ rằng trong lần đầu tiên tôi cài đặt, tôi đã thay đổi tên. Bây giờ, mặc định (app_release.apk) không cài đặt. Có lẽ tôi sẽ thử thay đổi nó ... hmmm.
pashute

3

Sử dụng Android Studio, trước đây tôi đã cài đặt phiên bản gỡ lỗi chưa ký của APK ( Build> Build APK ) và phải gỡ cài đặt trước khi cài đặt phiên bản phát hành đã ký ( Build Variants> Build Variant: release , Build> Generate APK ).


1
Tôi đã lãng phí hai giờ cho cùng một vấn đề. Ứng dụng của tôi hiển thị phiên bản, ví dụ. "3.5.6", nhưng không hiển thị cho dù đó là phiên bản gỡ lỗi hay phát hành. Tôi đã loay hoay với rất nhiều tệp khác nhau và không biết mình đang ở đâu, và đã cố cập nhật apk Gỡ lỗi với apk Phát hành. Tôi nghĩ rằng Android đã từng hiển thị một thông báo như "chữ ký tệp xung đột", nhưng bây giờ (Pie, 9.0) bạn chỉ nhận được "Ứng dụng chưa được cài đặt", không có tùy chọn để tìm lý do. Một bài học đau đớn!
Stephen Hosking

3

Đối với tôi nguyên nhân là tôi đã có nhiều bản dựng bằng các biến thể xây dựng khác nhau trên cùng một điện thoại:

nhập mô tả hình ảnh ở đây

Điều xảy ra là một số bản dựng này được xây dựng bởi tôi , một bản dựng khác được gửi cho tôi bởi một nhà phát triển khác .. cố gắng cài đặt các nhà phát triển trong khi tôi có các bản dựng khác (do tôi xây dựng) gây ra lỗi trên.

Vì vậy, cách khắc phục rất đơn giản: xóa tất cả các bản dựng trên điện thoại của tôi (bất kể biến thể xây dựng) .. sau đó cài đặt apk được gửi bởi đồng nghiệp của tôi .. và nó hoạt động như một bùa mê


có cùng một vấn đề, tôi đoán giải pháp là luôn ký các bản dựng khi sử dụng hương vị
Nickmccomb

3

Tôi đã phải đối mặt với một vấn đề tương tự ngày hôm nay và lúc đầu tôi nghĩ rằng đó là thẻ sd của tôi đã làm hỏng nó. Tôi đã thử nó trên nhiều thiết bị chạy Android 4.4 trở lên nhưng nó vẫn gây ra vấn đề tương tự. Sau khi một số nghiên cứu và nghiên cứu tôi nhận ra rằng tôi đã không chọn chữ ký jar v1 dành cho các thiết bị cũ hơn Android 7.0 nougat vì vậy tôi đã áp dụng cả hai những chữ ký này bằng cách chọn hai hộp kiểm và tạo apk đã ký và nó đã hoạt động.

nhập mô tả hình ảnh ở đây

Liên kết với giải pháp Android - Lỗi ứng dụng không được cài đặt khi cài đặt APK đã ký - Cách khắc phục


Điều này đã giúp tôi cho một thiết bị chạy Android 6
Stefan Zhelyazkov

Tôi rất vui vì câu trả lời này đã giúp bạn giải quyết vấn đề. @ StefanZhelyazkov
Nelson Katale

2

Điều này cũng có thể xảy ra khi tạo tiện ích màn hình chính và tệp XML của tiện ích con của bạn có Hoạt động không chính xác được chỉ định trong thuộc tính của nó android:configure.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.