Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用导航组件在单个活动设计中使用权限?_Android_Android Activity_Android Manifest_Android Permissions - Fatal编程技术网

Android 如何使用导航组件在单个活动设计中使用权限?

Android 如何使用导航组件在单个活动设计中使用权限?,android,android-activity,android-manifest,android-permissions,Android,Android Activity,Android Manifest,Android Permissions,我以前的应用程序有许多活动,其中一些活动被声明为导出的true,以便其他应用程序可以通过意图过滤器调用它们。 他们中的一些人还拥有特定的权限,这些权限也设置在我的活动中 现在,我正在开发一个使用单一活动的应用程序。 因此,我很想知道如何在单个活动设计中处理这个权限问题,因为我只有一个活动 // Single activity: exported = true. How can i handle permission for place action? <activity

我以前的应用程序有许多活动,其中一些活动被声明为导出的true,以便其他应用程序可以通过意图过滤器调用它们。 他们中的一些人还拥有特定的权限,这些权限也设置在我的活动中

现在,我正在开发一个使用单一活动的应用程序。 因此,我很想知道如何在单个活动设计中处理这个权限问题,因为我只有一个活动

   // Single activity: exported = true. How can i handle permission for place action?
    <activity
        android:name="com.example.singleActivity"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <!-- Place -->
            <action android:name="com.action.places"/> // How can i handle permission for this action?

            <!-- UserCheck -->
            <action android:name="com.confirm.passowrd" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
   
以前,在多个活动中,我可以轻松设置特定活动的权限。我怎么处理这件事? 我是个新手。我找了很多,但没有找到任何线索

编辑:

    Multiple activities declaration:

    <permission
      android:name="com.example.permission"
      android:protectionLevel="signatureOrSystem"
      tools:ignore="SignatureOrSystemPermissions" 
    />

    // Activity 1: With permission, exported = true
    <activity
        android:name=".place"
        android:configChanges="keyboardHidden|orientation|screenSize|screenLayout"
        android:exported="true"
        android:label="place"
        android:permission="com.example.permission" // Sets a permission
        android:theme="@style/Theme.AppCompat.DayNight.NoActionBar">
        <intent-filter>

            <action android:name="com.action.places" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

    // Activity 2: With no permission, exported = true

      <activity
        android:name="userCheck"
        android:configChanges="mcc|mnc|keyboard|keyboardHidden|orientation"
        android:exported="true"
        android:theme="@style/Theme.AppCompat.DayNight.NoActionBar">
        <intent-filter>
            <action android:name="com.confirm.passowrd" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
     </activity>
多活动声明:
//活动1:具有权限,导出=true
//活动2:在没有权限的情况下,exported=true
现在,我想转到单个活动

   // Single activity: exported = true. How can i handle permission for place action?
    <activity
        android:name="com.example.singleActivity"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <!-- Place -->
            <action android:name="com.action.places"/> // How can i handle permission for this action?

            <!-- UserCheck -->
            <action android:name="com.confirm.passowrd" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
   
//单个活动:exported=true。我如何处理放置操作的权限?
//我如何处理此操作的权限?

如果要限制在某些情况下启动单个
活动,而不是在其他情况下启动,则不能使用基于清单的权限。基于清单的权限控制对特定
活动的访问,无论该活动如何启动


您可以做的是为您的单个
活动创建
是一个清单条目,它引用实际的
活动
,但提供备用启动选项。您可以在
上指定与实际
活动
不同的权限集。您还可以指定不同的
启动模式
,不同的
,等等。

我不太理解您的问题。如果您的应用程序只有一个
活动
,则您需要从该
活动
请求所有权限。或者您正在询问访问活动所需的自定义权限?请编辑您的问题,并给我们一个您遇到问题的例子。@DavidWasser请现在检查我在单活动设计中遇到了另一个问题。你能帮帮我吗?我面临一个有关Activity alias许可的问题。请检查一下这个好吗?