首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Android在没有足够许可的情况下打开应用程序。

Android在没有足够许可的情况下打开应用程序。
EN

Stack Overflow用户
提问于 2014-03-12 19:42:24
回答 1查看 67关注 0票数 1

我开始在Android上开发,我正在努力理解权限,但是我制作的应用程序不起作用,而“危险”的应用程序正在被打开,即使开放程序没有打开它所需的权限。

危险清单

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.second_dangerousapp"
android:versionCode="1"
android:versionName="1.0" >
<permission
     android:name="com.dangerous_app.permission.DANGEROUS_ACTIVITY"
    android:label="@string/label_dangerousActivity"
    android:description="@string/description_dangerousActivity"
    android:permissionGroup="android.permission-group.APP_INFO" >
</permission>

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="18" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.second_dangerousapp.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.DANGEROUS_ACTIVITY" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

这个应用程序本身就是一个简单的文本视图。

然后,opener应用程序权限清单

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.second_permissions"
android:versionCode="1"
android:versionName="1.0" >


<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="18" />

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

以及主要活动的代码

代码语言:javascript
复制
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button btnOpen = (Button) findViewById(R.id.buttonOpen);
    btnOpen.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            Intent open = new    Intent("android.intent.action.DANGEROUS_ACTIVITY");
            startActivity(open);
        }
    });
}

我做错了什么。因为现在权限应用程序不应该能够打开危险的应用程序,因为它没有所需的权限。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-12 19:45:39

因为现在权限应用程序不应该能够打开危险的应用程序,因为它没有所需的权限。

在你的应用程序中,你并没有用自定义权限来保护任何东西。仅仅有一个<permission>元素除了定义权限之外,什么也不做。您还需要在某个地方应用该权限,例如通过android:permission属性在您的<activity>上应用。

您还可能希望阅读这篇博客文章有关自定义权限的一些意外行为。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22362176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档