2015-07-24 34 views
19

Gần đây, Google cho phép tự động hợp nhất từ ​​Google Service vào gói phát hành cuối cùng. Một số yêu cầu tại đây Why are permissions being automatically added to my AndroidManifest when including Google Play Services libraryLàm cách nào để xóa quyền cụ thể khi xây dựng ứng dụng Android với gradle?

Sự cố của tôi là một số quyền không cần và tôi không muốn có một số quyền nhạy cảm trong ứng dụng của mình. Vì vậy, làm thế nào để loại bỏ sự cho phép như android.permission.ACCESS_COARSE_LOCATION? Với việc xây dựng gradle, tôi không muốn vô hiệu hóa Manifest Sáp nhập. Tôi đọc một số nơi mà có thể cấu hình Sáp nhập để loại bỏ sự cho phép từ lib bên ngoài, nhưng tôi không thể tìm thấy làm thế nào để làm điều đó.

Trả lời

30

Thêm thuộc tính tools:node với một giá trị của remove đến biểu hiện của bạn:

<manifest ... xmlns:tools="http://schemas.android.com/tools"> 
    ... 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove"/> 
    ... 
</manifest> 

Xem http://tools.android.com/tech-docs/new-build-system/user-guide/manifest-merger#TOC-tools:node-markers

Đừng quên để thêm namespace tools đến phần tử gốc của biểu hiện của bạn.

+1

Công việc tuyệt vời, cảm ơn bạn rất nhiều! – DzungPV

+0

tanxxxxxxxxxxxxxxx :) –

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