2010-08-13 43 views
30

Chỉ cần cho Heck của nó, tôi yêu cầu tất cả các điều khoản từ ứng dụng của tôi (hello world), để xem các loại quyền được cấp là gì và những gì được từ chối! Để giải trí của tôi, tôi tìm thấy khoảng 40 của các điều khoản không được cấp! Hai người được trả lại là những điều khoản không rõ.Tại sao các quyền này bị từ chối?

Đây là nhật ký của tất cả các điều khoản đó đã bị từ chối với tôi -

W/PackageManager( 61): Not granting permission android.permission.ACCESS_CHECKIN_PROPERTIES to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.ACCESS_SURFACE_FLINGER to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.ACCOUNT_MANAGER to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BIND_APPWIDGET to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BIND_DEVICE_ADMIN to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BIND_INPUT_METHOD to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BIND_WALLPAPER to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BRICK to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BROADCAST_PACKAGE_REMOVED to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BROADCAST_SMS to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.BROADCAST_WAP_PUSH to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.CALL_PRIVILEGED to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.CHANGE_COMPONENT_ENABLED_STATE to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.CLEAR_APP_USER_DATA to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.CONTROL_LOCATION_UPDATES to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.DELETE_CACHE_FILES to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.DELETE_PACKAGES to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.DEVICE_POWER to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.DIAGNOSTIC to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.FACTORY_TEST to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.FORCE_BACK to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.GLOBAL_SEARCH to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.HARDWARE_TEST to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.INJECT_EVENTS to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.INSTALL_LOCATION_PROVIDER to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.INSTALL_PACKAGES to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.INTERNAL_SYSTEM_WINDOW to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.MANAGE_APP_TOKENS to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.MASTER_CLEAR to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.READ_FRAME_BUFFER to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Unknown permission android.permission.READ_HISTORY_BOOKMARKS in package com.robosoft.linuxtop 
W/PackageManager( 61): Not granting permission android.permission.READ_INPUT_STATE to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.REBOOT to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.SET_ACTIVITY_WATCHER to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.SET_ORIENTATION to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.SET_PREFERRED_APPLICATIONS to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.SET_TIME to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.STATUS_BAR to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.UPDATE_DEVICE_STATS to package com.robosoft.linuxtop (protectionLevel=2 flags=0x8444) 
W/PackageManager( 61): Not granting permission android.permission.WRITE_GSERVICES to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 
W/PackageManager( 61): Unknown permission android.permission.WRITE_HISTORY_BOOKMARKS in package com.robosoft.linuxtop 
W/PackageManager( 61): Not granting permission android.permission.WRITE_SECURE_SETTINGS to package com.robosoft.linuxtop (protectionLevel=3 flags=0x8444) 

Bây giờ cho một thực tế, tôi biết mức hai điều khoản không được cấp cho các nhà phát triển ứng dụng của bên thứ ba và chỉ được dành riêng cho các OEM. Nhưng tôi ngạc nhiên vì nhiều điều khoản cấp ba đã bị từ chối với tôi (nếu không phải tất cả!). Do đó câu hỏi của tôi sẽ là lý do tại sao nó như vậy, tôi cần phải thêm cái gì khác để biểu hiện của tôi cho những điều khoản được chấp nhận? Ngoài ra không phải là hệ thống phải cấp quyền truy cập của tôi trên trình mô phỏng vì sau khi tất cả nó cho phát triển? Và nó có thông minh như trong nó sẽ từ chối các điều khoản mà nó cho là không hợp lý trong đơn của tôi không? Hệ thống Android có tiến bộ mà nó hiểu mã không?

Tôi sẽ đánh giá cao nếu bạn thực sự có thể giải thích cho tôi khái niệm này trong một vài dòng thay vì chỉ cho tôi các quyền và tài liệu bảo mật thông thường. Tôi đã đọc qua một vài lần và tôi đoán rằng sự hiểu biết của tôi đang thiếu trong một số quan điểm. Do đó tôi rất thích đọc một số nỗ lực khác để giải thích nó cho tôi. Cảm ơn

+0

Không phải là chuyên gia Android, nhưng nói với tư cách là một người có trải nghiệm khác trong các hệ thống nhúng, rất nhiều trong số này trông giống như chúng có thể khá nguy hiểm. Và sẽ không có ý nghĩa gì khi cho phép họ trong bộ mô phỏng nếu họ không bao giờ có mặt trên một thiết bị thực - đó là cách tuyệt vời để lãng phí thời gian của một nhà phát triển phải phát triển mà không cần thiết bị trong khi và vô tình dựa vào sự cho phép mà anh ta không thể có. –

+0

Tôi đồng ý với bạn, nhưng từ quan điểm của một nhà nghiên cứu, tôi nghĩ rằng những điều này nên được cho phép. Tôi thực sự cho phép chúng tôi kiểm tra Android thực sự cho phép chúng ta hiểu được mức độ mà Android có thể ảnh hưởng đến thiết bị. – Shouvik

+1

Vâng, tôi giả định giả lập là mã nguồn mở cùng với phần còn lại của SDK, vì vậy bạn có thể xây dựng lại nó để cho phép bạn truy cập vào các quyền. Dunno cứng nó sẽ được, mặc dù. –

Trả lời

31

quyền Android được tách ra để bốn nhóm:
- Thường xuyên
- Dangerous
- Hệ thống hoặc Signed
- Ký

Quyền trong hai nhóm đầu tiên có thể được cấp cho bất kỳ ứng dụng nào.
Hai thiết bị cuối cùng chỉ có thể nhận được bằng các ứng dụng hệ thống - được cài đặt sẵn trong firmware của thiết bị hoặc được với "khóa nền tảng", tức là cùng một khóa được sử dụng để ký chương trình cơ sở.

+2

làm cách nào để biết nhóm là gì? Google không đề cập đến sự cho phép của bốn nhóm trong http://developer.android.com/reference/android/Manifest.permission.html –

+0

@adamk nếu tôi đặt ứng dụng vào/hệ thống/ứng dụng theo lý thuyết, ứng dụng đã trở thành ứng dụng "hệ thống" để tôi có được đặc quyền sử dụng INSTALL_PACKAGES đúng không? nhưng có vẻ như không hoạt động http://stackoverflow.com/q/8130677/774543 – Zorb

+0

@ Someome Một nơi nào đó: Bốn nhóm bảo mật xuất hiện ở đây: http://developer.android.com/guide/topics/manifest/permission -element.html. Câu trả lời được chấp nhận cũng có liên kết đến một chuỗi đề cập đến mức độ bảo vệ chữ ký và chữ kýOrSystem. – Theo

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