Hi! Thank you for your response!
Ok, I understand that it would be quite a difficult task and I should get familiar with Android source code in the first place. On 28 Lis, 14:39, Mark Murphy <mmur...@commonsware.com> wrote: > On Mon, Nov 28, 2011 at 5:15 AM, cpphool <cpph...@gmail.com> wrote: > > I was wondering what is the correct approach when developing > > applications with non-public functionality for Android device > > manufacturers. > > Just say no. > > > First of all, there are a lot of Android permissions that are not > > granted to 3rd party apps unless they are signed with manufacturer > > certificate, f.e. "android.permission.READ_FRAME_BUFFER". > > >http://developer.android.com/reference/android/Manifest.permission.ht... > > > Android documentation says: "Allows an application to take screen > > shots and more generally get access to the frame buffer data". Ok, so > > how can I take this screen shot? Is there some API? > > No. > > > Or should I > > directly access framebuffer (like many applications that work on > > rooted devices do)? > > Your guess is as good as mine. > > > 1) Where can I find out how these permissions exactly work? > > Read through the source code onhttp://source.android.com. Searching > on the name of the permission frequently comes up with interesting > stuff. > > > 2) Should not there be some information if permissions are accessible > > by normal 3rd party applications or not? > > There isn't in the documentation. > > However, in frameworks/base/core/res/AndroidManifest.xml in the source > code, you will see declarations like: > > <!-- Allows an application to take screen shots and more generally > get access to the frame buffer data --> > <permission android:name="android.permission.READ_FRAME_BUFFER" > android:label="@string/permlab_readFrameBuffer" > android:description="@string/permdesc_readFrameBuffer" > android:protectionLevel="signature" /> > > The android:protectionLevel tells you what is required. In this case, > "signature" means that it must be signed with the same signing key as > is used with the firmware. You will also sometimes see > "signatureOrSystem", which (from what I can tell) allows both > signature-based apps and ones that reside in /system/app. > > > 3) Secondly, is there a way of testing an applications that uses these > > non-public permissions? I assume that you would have rooted device in > > order to do so. But can you switch something in the rooted Android > > operating system so that it would grant all permissions for all > > applications? > > Not that I am aware of, but that's a far better question for some > firmware-related Google Group, hosted over onhttp://source.android.com. > > -- > Mark Murphy (a Commons > Guy)http://commonsware.com|http://github.com/commonsguyhttp://commonsware.com/blog|http://twitter.com/commonsguy > > Warescription: Three Android Books, Plus Updates, One Low Price! -- You received this message because you are subscribed to the Google Groups "Android Developers" group. To post to this group, send email to android-developers@googlegroups.com To unsubscribe from this group, send email to android-developers+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/android-developers?hl=en