Android разрешения не запрашиваются при установке - PullRequest
1 голос
/ 06 февраля 2020

Я искал похожие вопросы, прежде чем писать здесь, и не нашел ответа, решающего мою проблему. Мой файл манифеста. 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) для создания своего приложения, приложение работает отлично, но у меня все еще есть эта проблема с разрешениями не запрашивается при установке ... Может кто-нибудь сказать мне, что я делаю не так здесь? Заранее спасибо:)

Ответы [ 3 ]

6 голосов
/ 06 февраля 2020

Вы не делаете ничего плохого, кроме ожидания чего-то, что больше не доступно. Приложения с targetSdkVersion 23 или выше работают исключительно вне разрешений времени выполнения - невозможно заставить Play Store или Android запрашивать у пользователя разрешение во время установки. И вы не можете распространять свое приложение в Play Store (и на некоторых других каналах распространения) со старым targetSdkVersion.

1 голос
/ 06 февраля 2020

Вы можете попытаться добавить активность Spla sh (первый экран), когда у вас спросят разрешение. Когда пользователь впервые установит приложение, он увидит экран, скажем, экран настройки или вводный экран, где у него спросят разрешение. После того, как вы установите свойство и больше не будете показывать этот экран.

0 голосов
/ 06 февраля 2020

Добавьте это в свой основной вид деятельности при создании метода.

/*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);
        }
...