您的位置:首页 > 其它

自定义权限permission

2015-12-09 13:22 267 查看
自定义权限permission_user_defined是用来保护我们一些重要的组件不被其他应用轻易访问。

1、这里先看一下我们怎么访问同一设备下的其他应用

a、先要找到其他应用的Activity的全名(包名.类名)

b、把得到的Activity加载到Intent中启动Intent

这样就访问到其他应用的Activity了(如下代码:)

package zxx.user_defined;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button but = (Button) findViewById(R.id.button);
but.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Intent intent = new Intent();

intent.setClassName("com.zxx.ccc", "com.zxx.ccc.MainActivity");

startActivity(intent);

}
});

}

}
2、我们为被访问的app设置一个权限,<span style="font-family: Arial, Helvetica, sans-serif;">一般我们要设置两个属性就行了</span>
<span style="font-size:14px;">a、name属性:<span style="font-family: Arial, Helvetica, sans-serif;">android:name="zxx.com.sss"</span></span>
<span style="font-size:14px;">b、<span style="font-family: Arial, Helvetica, sans-serif;">protectionLevel权限等级属性:</span><span style="font-family: Arial, Helvetica, sans-serif;"> android:protectionLevel="normal" --普通权限</span>
</span>
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"><span style="font-size:14px;">这样我们的App中的Activity就不会轻易地被其他App访问</span></span>
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);"><span style="font-size:14px;">permission是在manifest.xml配置的 </span></span>


<permission
android:name="zxx.com.sss"
android:protectionLevel="normal" >
</permission>

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:permission="zxx.com.sss" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
3、要访问设置了权限的Activity就要加她所设置的权限

<uses-permission android:name="zxx.com.sss" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: