หากคุณใช้ Google Maps + บริการ Google Play ภายในโครงการห้องสมุด (โดยเฉพาะเมื่อคุณเพิ่งย้ายจาก Eclipse ไปยัง Android Studio) คุณสามารถพบข้อผิดพลาดนี้เมื่อคุณพยายามเรียกใช้แอพที่ใช้ห้องสมุดของคุณในขณะที่แอพอื่นที่ใช้ มีไลบรารีเดียวกันติดตั้งอยู่ในอุปกรณ์ของคุณแล้ว
แก้ไข:
ตรวจสอบให้แน่ใจว่า defaultConfig.applicationId มีการกำหนดไว้ในส่วน android ของbuild.gradle
ไฟล์สำหรับแต่ละโครงการโดยใช้ห้องสมุดของคุณ
android {
defaultConfig.applicationId = "com.company.appname"
}
ฉันอยากจะแนะนำให้ใช้ชื่อแพ็กเกจของแอพที่เฉพาะเจาะจง ด้วยการแก้ไขนี้ชื่อผู้ให้บริการจะไม่ขัดแย้งกันอีกต่อไปและแอปของคุณจะทำงานตามที่คาดไว้
อาการ
1. ) ผู้ใช้ของคุณเห็นข้อผิดพลาดในการติดตั้ง "-505" ที่น่ากลัวเมื่อติดตั้งแอพของคุณจาก Play Store
2. ) คุณจะเห็นข้อความแสดงข้อผิดพลาดนี้เมื่อคุณพยายามติดตั้งแอปที่สองที่ใช้ห้องสมุดของคุณผ่าน Android Studio [INSTALL_FAILED_CONFLICTING_PROVIDER]:
ในคอนโซลของคุณคุณจะเห็นข้อความดังนี้:
Package couldn't be installed in /data/app/com.company.appname-1
com.android.server.pm.PackageManagerException:
Can't install because provider name
com.google.android.gms.measurement.google_measurement_service
(in package com.company.appname) is already used by
com.company.otherInstalledAppName
การแก้ไขคือเพื่อให้แน่ใจว่า defaultConfig.applicationId ถูกกำหนดไว้ในส่วน android ของbuild.gradle
ไฟล์สำหรับแต่ละโครงการโดยใช้ห้องสมุดของคุณ
android {
defaultConfig.applicationId = "com.company.appname"
}
อ่านเพิ่มเติมได้ที่นี่ในรายงานข้อผิดพลาดดั้งเดิม: ปัญหา 784: หลาย ๆ แอปโดยใช้ชื่อผู้ให้บริการสิทธิ์เดียวกัน
android:authorities
คุณสมบัติในAndroidManifest
provider
แท็กของฉัน ฉันใช้โครงการนี้เป็นโครงการห้องสมุด Android โดยใช้โครงการห้องสมุดนี้ฉันได้พัฒนาโครงการไม่กี่แห่ง วิธีแก้install_failed_conflicting_provider
ปัญหาถ้าเราใช้โครงการห้องสมุดทั่วไป