อนุญาตให้เฉพาะแอประบบเท่านั้น


100

ฉันมีแอประบบที่ใช้สิทธิ์ของระบบและฉันมีสิทธิ์เหล่านั้นอยู่ในรายการ Eclipse ให้ข้อผิดพลาดต่อไปนี้เมื่อฉันพยายามสร้างบิลด์ (การสร้างบรรทัดคำสั่งใช้งานได้):

อนุญาตให้เฉพาะแอประบบเท่านั้น

ฉันทราบอยู่แล้วว่าแอปของฉันต้องการการอนุญาตจากระบบและไม่ใช่ปัญหาสำหรับฉันเพราะแอปพลิเคชันของฉันจะใช้กับโทรศัพท์ที่รูทเท่านั้น ดังนั้นฉันต้องการระงับข้อผิดพลาดนี้ใครรู้วิธี?

แก้ไข
โปรเจ็กต์ของฉันคอมไพล์ได้ดีในบรรทัดคำสั่งติดตั้งรันและอื่น ๆ แล้วปัญหาของฉันคือคราสให้ข้อผิดพลาดสำหรับไฟล์ manifest


2
คุณตรวจสอบstackoverflow.com/q/9494965/603744
Andro Selva

@AndroSelva มันไม่เกี่ยวข้องกันโปรเจ็กต์ของฉันคอมไพล์ได้ดีในบรรทัดคำสั่งติดตั้งรัน ฯลฯ แล้วปัญหาของฉันเกี่ยวกับคราสที่ให้ข้อผิดพลาดสำหรับไฟล์ manifest IMO ควรสร้างคำเตือนในกรณีนี้เท่านั้น
Caner

คำตอบ:


206

ใน Eclipse:

หน้าต่าง -> การตั้งค่า -> Android -> การตรวจสอบข้อผิดพลาดของผ้าสำลี

ในรายการให้ค้นหารายการด้วยID = ProtectedPermission. ตั้งค่าความรุนแรงให้ต่ำกว่าข้อผิดพลาด วิธีนี้คุณยังสามารถคอมไพล์โปรเจ็กต์โดยใช้ Eclipse

ใน Android Studio:

ไฟล์ -> การตั้งค่า -> ตัวแก้ไข -> การตรวจสอบ

ภายใต้การค้นหาAndroid Lint Using system app permissionยกเลิกการเลือกช่องทำเครื่องหมายหรือเลือกความรุนแรงที่ต่ำกว่าข้อผิดพลาด


1
ขอบคุณ! ใน Android Studio 1.2 ฉันพบสิ่งนี้ภายใต้ไฟล์ -> การตั้งค่า -> ตัวแก้ไข -> การตรวจสอบ
แอรอน

ฉันต้องการเปลี่ยนความสว่างของหน้าจอโดยทางโปรแกรม ฉันได้แก้ไข Lint ภายใต้การตั้งค่า แต่มีข้อยกเว้นด้านความปลอดภัยบางอย่างในขณะที่พยายามเปลี่ยนความสว่างหน้าจอโดยใช้โปรแกรม ใครมีวิธีแก้ไขในการนำฟีเจอร์นี้ไปใช้ใน Android 3.1 ข้างบน Marshmallow โปรดแบ่งปัน
นิธินจิตต์

3
ใน Android Studio 2.1 ไปที่ File -> Settings -> Editor -> Inspections จากนั้นขยาย Android> Lint> Correctness เลือก "ใช้สิทธิ์แอประบบ" เปลี่ยนความรุนแรงหรือยกเลิกการเลือกช่องทำเครื่องหมาย
Ezekiel Baniaga

2
มันอยู่ภายใต้Android > Lint > Correctnessสำหรับฉัน
Beyondo

78

หากต้องการละเว้นข้อผิดพลาดนี้สำหรับอินสแตนซ์เดียวเท่านั้นให้เพิ่มtools:ignore="ProtectedPermissions"แอตทริบิวต์ในการประกาศสิทธิ์ของคุณ นี่คือตัวอย่าง:

<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
    tools:ignore="ProtectedPermissions" />

คุณต้องเพิ่ม toolsเนมสเปซในองค์ประกอบรูทรายการ

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"

3
นี่คือ anwser ที่ถูกต้อง เหตุใดจึงปิดใช้งานการตรวจสอบทั้งหมดในเมื่อจำเป็นเพียงบางส่วน ขอบคุณครับ!
Yoraco Gonzales

คุณจะต้องเพิ่มเนมสเปซ ... xmlns: tools = " schemas.android.com/tools "
purplecabbage

13

มีข้อผิดพลาดเดียวกันเป็นครั้งคราว (เมื่อฉันตั้งค่าตำแหน่งการติดตั้งเป็น "ชอบภายนอก" ในไฟล์ Manifest) เพียงแค่ทำความสะอาดและสร้างโครงการใหม่ ใช้ได้ผลสำหรับฉัน



3

เมื่อคุณเพิ่มสิทธิ์ในรายการจากนั้นใน eclipse ไปที่ project และ clic

  1. คลิกที่โครงการ
  2. คลิกที่โครงการสะอาดนั่นคือทั้งหมด

k ในโครงการที่สะอาด


1

ค่ากำหนด -> EditorEditor -> การตรวจสอบ -> Android Lint -> ยกเลิกการเลือกรายการโดยใช้แอประบบอนุญาต


1

เส้นทางใน Android Studio ใน mac:

Android Studio -> ค่ากำหนด -> ตัวแก้ไข -> การตรวจสอบ

ขยาย Android -> ขยาย Lint -> ขยายความถูกต้อง

ยกเลิกการเลือกช่องทำเครื่องหมายสำหรับการใช้สิทธิ์แอประบบ

คลิกที่ "สมัคร" -> "ตกลง"

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.