Request special permission with protection level = signature with non-compliance signature?

Let's say I have a server application that declares the user permission com.testpackage.mypermission , which is necessary to run ServerActivity

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.testpackage.myserver"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="10" />
    <permission android:name="com.testpackage.mypermission" android:label="my_permission" android:protectionLevel="signature"></permission>

    <application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name" >
        <activity
            android:permission="com.testpackage.mypermission"
            android:name=".ServerActivity"
            android:label="@string/app_name" >
        </activity>
    </application>

</manifest>

Then I have a client application that requests com.testpackage.mypermission in its manifest:

<uses-permission android:name="com.testpackage.mypermission" />

I know that if 2 applications are signed with different certificates, the client application will not be able to start com.testpackage.myserver.ServerActivity due to protectionLevel = signature.

My question is:

  • , , ? , startActivity (ServerActivity) ?
  • Q.1 . , (, android.permission.CAMERA) . , -?

+4

Source: https://habr.com/ru/post/1568078/


All Articles