Uniapp-Offline-Paketierung zum Hinzufügen von Lese- und Schreibberechtigungen für Dateien

问题:Das Projekt verwendet Dateispeicherdatenanforderungen. Die Lese- und Schreibberechtigungen wurden zur manifest.json im Projekt hinzugefügt. Es gibt kein Problem mit dem realen Maschinenbetrieb und der Cloud-Verpackung. Die Daten in der Datei können gelesen werden, aber Offline-Verpackung und Daten lesen Nur leer.

Android Studio wird für die Uniapp-Offline-Verpackung verwendet. Die Lese- und Schreibberechtigungen von Dateien werden im Projekt verwendet. Sie müssen Lese- und Schreibberechtigungen im Verpackungsprojekt UniPlugin-Hello-AS hinzufügen.

Spezifischer Vorgang:
Ändern Sie UniPlugin-Hello-AS/app/src/main/AndroidManifest.xmldie Datei. Alle Berechtigungskonfigurationen sind darin enthalten AndroidManifest.

1. Fügen Sie Lese- und Schreibberechtigungen hinzu

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

2. Bewerbung hinzufügen (sehr wichtig)

android:requestLegacyExternalStorage="true"

注意:Nur das Hinzufügen von Lese- und Schreibberechtigungen wird nicht wirksam. Sie müssen den Inhalt von Schritt 2 hinzufügen (am Anfang habe ich nur die Berechtigung des ersten Schritts hinzugefügt, der Inhalt der Lesedatei ist leer. Nach dem Hinzufügen des zweiten Schritts können Sie dies tun Lesen Sie den Inhalt der Datei, wissen Sie nicht warum).

Inhalt der AndroidManifest.xml-Datei:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="com.android.UniPlugin">

    <supports-screens
        android:anyDensity="true"
        android:largeScreens="true"
        android:normalScreens="true"
        android:resizeable="true"
        android:smallScreens="true" />
        <!-- 读写权限 -->
        <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <application
        android:name="io.dcloud.application.DCloudApplication"
        android:allowBackup="true"
        android:allowClearUserData="true"
        android:icon="@drawable/icon"
        android:label="@string/app_name"
        android:requestLegacyExternalStorage="true"
        android:largeHeap="true"
        android:supportsRtl="true">
         <meta-data
            android:name="dcloud_appkey"
            android:value="替换为自己申请的Appkey" />
    </application>

Im Anhang sind die von der Uniapp-Cloud-Verpackung hinzugefügten Standardberechtigungen und die Cloud-Verpackungsberechtigungskonfiguration der Android-Plattform aufgeführt :

<uses-permission android:name="android.permission.INTERNET" />  
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />  
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
<uses-permission android:name="android.permission.READ_PHONE_STATE" />  
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
<uses-permission android:name="com.asus.msa.SupplementaryDID.ACCESS" />  
<uses-permission android:name="com.huawei.android.launcher.permission.CHANGE_BADGE" />  
<uses-permission android:name="android.permission.INSTALL_PACKAGES" />  
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

Referenz-Blogbeitrag: Android 10 beantragt dynamisch Lese- und Schreibberechtigungen

Ich denke du magst

Origin blog.csdn.net/weixin_41767649/article/details/124039298
Empfohlen
Rangfolge