मेरे पास दो अनुप्रयोग हैं।एंड्रॉइड में कस्टम अनुमतियों का उपयोग कैसे करें?
एक अनुमति घोषित करने और एकल Activity
रहा है:
के भाग AndroidManifest.xml
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:permission="your.namespace.permission.TEST" >
<activity
android:name=".DeclaringPermissionActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="myapp"
android:host="myapp.mycompany.com" />
</intent-filter>
</activity>
</application>
दूसरा है घोषणा करता है कि अनुमति का उपयोग करता
के भाग AndroidManifest.xml
<uses-sdk android:minSdkVersion="10" />
<uses-permission android:name="your.namespace.permission.TEST" />
<application
Activity
का हिस्सा:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("myapp://myapp.mycompany.com/index")));
}
मैं आवेदन की घोषणा की अनुमति स्थापित करने कर रहा हूँ, तो मैं दूसरे एप्लिकेशन को चलाने के।
01-11 09:46:55.249: E/AndroidRuntime(347): java.lang.RuntimeException: Unable to start activity ComponentInfo{your.namespace2/your.namespace2.UsingPErmissionActivity}: java.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.VIEW dat=myapp://myapp.mycompany.com/index cmp=your.namespace/.DeclaringPermissionActivity } from ProcessRecord{407842c0 347:your.namespace2/10082} (pid=347, uid=10082) requires your.namespace.permission.TEST
मैं सिर्फ इस भेद्यता को इंगित करना चाहता हूं: http://commonsware.com/blog/2014/02/12/vulnerabilities-custom-permissions.html – Tobrun
उपरोक्त भेद्यता टिप्पणी के बारे में, एंड्रॉइड 5.0 में परिवर्तनों को ध्यान में रखें यह समस्या: http://developer.android.com/about/versions/android-5.0-changes.html#custom_permissions – Nonos