Android 安装时未请求权限

Android permissions not requested on installation

我在此处发帖之前搜索过类似的问题,但没有找到解决我问题的答案。 我的 manifest.xml 文件似乎是正确的,我希望要求用户提供安装权限(不是运行时,它已经适用于我的代码)。我不知道为什么我输入的参数不起作用:

<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:name="VILES" android:versionCode="1" android:versionName="0.0.1" package="fr.nc.delegue.referendum" xmlns:android="http://schemas.android.com/apk/res/android">
    <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
    <application android:hardwareAccelerated="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsRtl="true" android:usesCleartextTraffic="true">
        <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustResize">
            <intent-filter android:label="@string/launcher_name">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    <uses-feature android:name="android.hardware.telephony" android:required="false" />
    <uses-permission android:name="android.permission.RECEIVE_WAP_PUSH" />
    <uses-permission android:name="android.permission.RECEIVE_MMS" />
    <uses-permission android:name="android.permission.READ_SMS" />
    <uses-permission android:name="android.permission.WRITE_SMS" />
    <uses-permission android:name="android.permission.SEND_SMS" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
</manifest>

我使用 Cordova(和 Quasar)构建我的应用程序,该应用程序运行良好,但我仍然遇到安装时未请求权限的问题... 任何人都可以告诉我我在这里做错了什么吗? 提前致谢:)

你没有做错任何事,只是期待一些不再可用的东西。 targetSdkVersion23 或更高的应用程序完全依靠运行时权限运行——无法强制 Play 商店或 Android 在安装时提示用户获得权限。而且您不能使用旧的 targetSdkVersion.

在 Play 商店(以及其他一些分发渠道)上分发您的应用程序

在创建方法的主 activity 中添加它。

/*all permision need for this app*/
        int PERMISSION_ALL = 1;
        String[] PERMISSIONS = {
                Manifest.permission.READ_EXTERNAL_STORAGE,
        };


        /*check if the there is permission that is needed*/

        if (!hasPermissions(this, PERMISSIONS)) {
            ActivityCompat.requestPermissions(this, PERMISSIONS, PERMISSION_ALL);
        }

您可以在请求许可时尝试添加启动画面Activity(第一个屏幕)。 当用户第一次安装应用程序时,他会看到一个屏幕,比方说设置屏幕或介绍屏幕,他将被要求获得许可。之后你将设置一个 属性 并且不会再显示此屏幕。