मैं अपने बंडल को Google Play पर अपलोड करता हूं और मुझे यह अनुमतियां दिखाता हूं जिनमें शामिल हैं: android.permission.REQUEST_INSTALL_PACKAGES

और यह मेरी AndroidManifest फ़ाइल सामग्री है:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.flutter.application">

<!-- The INTERNET permission is required for development. Specifically,
     flutter needs it to communicate with the running application
     to allow setting breakpoints, to provide hot reload, etc.
-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.INTERNET"/>
<!-- io.flutter.app.FlutterApplication is an android.app.Application that
     calls FlutterMain.startInitialization(this); in its onCreate method.
     In most cases you can leave this as-is, but you if you want to provide
     additional functionality it is fine to subclass or reimplement
     FlutterApplication and put your custom class here. -->
<application
    android:name="io.flutter.app.FlutterApplication"
    android:label="flutter"
    android:icon="@mipmap/ic_launcher">
    <activity
        android:name=".MainActivity"
        android:launchMode="singleTop"
        android:theme="@style/LaunchTheme"
        android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode"
        android:hardwareAccelerated="true"
        android:windowSoftInputMode="adjustResize">
        <!-- This keeps the window background of the activity showing
             until Flutter renders its first frame. It can be removed if
             there is no splash screen (such as the default splash screen
             defined in @style/LaunchTheme). -->
        <meta-data
            android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
            android:value="true" />
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
        <intent-filter>
            <action android:name="FLUTTER_NOTIFICATION_CLICK" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>
    <activity
        android:name="com.yalantis.ucrop.UCropActivity"
        android:screenOrientation="portrait"
        android:theme="@style/Theme.AppCompat.Light.NoActionBar"/>
</application>

यह अनुमति क्या है और मैं इसे कैसे संभाल सकता हूं या इसे अपने पैकेज से हटा सकता हूं और जब मैं फोन पर अपना ऐप इंस्टॉल करता हूं तो यह अनुमति नहीं दिखती है?

1
veneno 5 जिंदा 2020, 12:06

2 जवाब

सबसे बढ़िया उत्तर

ठीक है, मैंने पाया कि android.permission.REQUEST_INSTALL_PACKAGES अनुमति को पैकेज में क्यों जोड़ा गया है क्योंकि file_open पैकेज में यह अनुमति है और इसे स्वचालित रूप से प्रोजेक्ट में जोड़ा गया है

0
veneno 22 जिंदा 2020, 10:23

आप इस अनुमति की घोषणा कर सकते हैं

  <uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

और targetSdkVersion 26 या उच्चतर (Oreo या उच्चतर) सेट करने की आवश्यकता है

आप इस विधि को कॉल करके इस अनुमति की जांच कर सकते हैं:

getPackageManager().canRequestPackageInstalls()
0
javaddroid 5 जिंदा 2020, 09:48