在Redmi note 8 proXiaomi上找不到离子文件路径

问题描述

我有一个应用程序,我们需要获取文件路径并打开该文件,但是当我在Asus Max Pro上进行测试时成功了,但是Redmi note 8 pro不能正常工作。

我如何将我的应用程序更新为cordova-android:9.0.0就是这样。

{
  "private": true,"dependencies": {
    "@ionic-native/camera": "^5.29.0","@ionic-native/chooser": "^5.29.0","@ionic-native/document-viewer": "^5.29.0","@ionic-native/file": "^5.29.0","@ionic-native/file-chooser": "^5.29.0","@ionic-native/file-opener": "^5.29.0","@ionic-native/file-path": "^5.29.0","@ionic-native/file-transfer": "^5.29.0","@ionic-native/geolocation": "^5.29.0
    "@ionic-native/open-native-settings": "^5.29.0","@ionic-native/photo-viewer": "^5.29.0
    "@ionic-native/streaming-media": "^5.29.0","@ionic-native/video-player": "^5.29.0","@ionic/angular": "^5.4.0","cordova-plugin-camera": "^5.0.0","cordova-plugin-document-viewer": "^1.0.0","cordova-plugin-file": "^6.0.2","cordova-plugin-file-opener2": "^3.0.5","cordova-plugin-file-transfer": "^1.7.1","cordova-plugin-filechooser": "^1.2.0","cordova-plugin-filepath": "^1.5.8","cordova-plugin-ionic-webview": "^5.0.0","resolve-url": "^0.2.1",

}, “ devDependencies”:{ “ @ angular / cli”:“ ^ 10.1.7”, “ com-sarriaroman-photoviewer”:“ ^ 1.2.5”, “ cordova-android”:“ ^ 9.0.0”, “ cordova-plugin-androidx”:“ ^ 3.0.0”, “ cordova-plugin-androidx-adapter”:“ ^ 1.1.1”, “ cordova-plugin-chooser”:“ ^ 1.3.2”

  },"cordova": {
    "platforms": [
      "android"
    ],"plugins": {
      "cordova-plugin-ionic-webview": {
        "ANDROID_SUPPORT_ANNOTATIONS_VERSION": "27.+"
      },"cordova-plugin-file-transfer": {},"cordova-plugin-file": {},"cordova-plugin-filechooser": {},"cordova-plugin-filepath": {},"cordova-plugin-file-opener2": {
        "ANDROID_SUPPORT_V4_VERSION": "27.+"
      },"cordova-plugin-camera": {
        "ANDROID_SUPPORT_V4_VERSION": "27.+"
      },"cordova-plugin-streaming-media": {},"cordova.plugins.diagnostic": {
        "ANDROID_SUPPORT_VERSION": "27.+","ANDROIDX_VERSION": "1.+"
      },"cordova-plugin-document-viewer": {},"com-badrit-base64": {},"cordova-plugin-app-version": {},"onesignal-cordova-plugin": {},"cordova-plugin-androidx": {},"cordova-plugin-androidx-adapter": {},"com-sarriaroman-photoviewer": {},"cordova-plugin-chooser": {}
    }
  }
}
TS
chooseFile(): void {
            this.platform.ready().then(async () => {
                let typeFileAllowedShow = this.typeFileAllowedShow();
                this.chooser.getFile(typeFileAllowedShow)
                    .then(async (data) => {
                        if (data) {
                            let filePath = await this.getFilePath(data);
                            this.showFile(filePath);
                                
                            
                        }
                    }).catch(e => console.log(e));
            })
        }

async getFilePath(data) {
    return (this.userService.so == 'android') ?
            await this.filePath.resolveNativePath(data.uri) : data.uri;
    }

    typeFileAllowedShow() {
        let typeFile;
        typeFile = 'video/*,'
                    + 'application/msword,'
                    + 'application/pdf,'
                    + 'application/vnd.oasis.opendocument.text,'
                    + 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
        return typeFile;
    }

showFile(file): void {
    this.files.push(file)
}
async startVideo(_path) {
        let options: StreamingVideoOptions = {
            successCallback: () => { console.log("Success") },errorCallback: (error) => {
                console.log("Video Start Fail")
                console.log(error)
            },orientation: 'portrait',shouldAutoClose: true,controls: true
        }
        this.streamingMedia.playVideo(_path,options);
    }

HTML

...
<ion-col size="6" *ngFor="let file of files; let i = index">
         <div class="anexo" class="img">
               <img src="../../../assets/images/video.png" (click)="startVideo(file)">
          </div>
</ion-col>
...


 <?xml version='1.0' encoding='utf-8'?>
    <widget id="x" version="1.0.9" xmlns="http://www.w3.org/ns/widgets" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:cdv="http://cordova.apache.org/ns/1.0">
          <content src="index.html" />
        <access origin="*" />
        <allow-navigation href="*" />
        <allow-intent href="http://*/*" />
        <allow-intent href="https://*/*" />
        <allow-intent href="tel:*" />
        <allow-intent href="sms:*" />
        <allow-intent href="mailto:*" />
        <allow-intent href="geo:*" />
        <preference name="ScrollEnabled" value="false" />
        <preference name="BackupWebStorage" value="none" />
        <preference name="SplashMaintainAspecRatio" value="true" />
        <preference name="FadeSplashScreenDuration" value="300" />
        <preference name="SplashShowOnlyFirstTime" value="false" />
        <preference name="SplashScreen" value="screen" />
        <preference name="KeyboardResize" value="true" />
        <preference name="SplashScreenDelay" value="3000" />
        <preference name="ShowSplashScreen" value="true" />
        <preference name="KeyboardResizeMode" value="native" />
        <feature name="CDVWKWebViewEngine">
            <param name="ios-package" value="CDVWKWebViewEngine" />
        </feature>
        <preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
        <platform name="android">
            <resource-file src="google-services.json" target="app/google-services.json" />
            <config-file parent="/*" target="config.xml">
                <preference name="GradlePluginGoogleServicesEnabled" value="true" />
                <preference name="GradlePluginGoogleServicesversion" value="4.2.0" />
            </config-file>
            <preference name="AndroidPersistentFileLocation" value="Compatibility" />
            <preference name="android-minSdkVersion" value="22" />
            <preference name="android-targetSdkVersion" value="29" />
            <preference name="AndroidXEnabled" value="false" />
            <preference name="GradlePluginKotlinEnabled" value="true" />
            <preference name="GradlePluginKotlinCodeStyle" value="official" />
            <preference name="GradlePluginKotlinVersion" value="1.3.50" />
            <access origin="*" />
            <edit-config file="app/src/main/AndroidManifest.xml" mode="merge" target="/manifest/application">
                <application android:usesCleartextTraffic="true" />
            </edit-config>
            <allow-navigation href="*" />
            <allow-intent href="market:*" />
          </platform>
        <plugin name="cordova-plugin-device" spec="^2.0.2" />
        <plugin name="cordova-plugin-inappbrowser" spec="^3.0.0" />
        <plugin name="cordova-plugin-splashscreen" spec="^5.0.2" />
        <plugin name="cordova-plugin-whitelist" spec="^1.3.2" />
        <plugin name="cordova-plugin-ionic-webview" spec="2.0.0-beta.1" />
        <plugin name="cordova-plugin-statusbar" spec="^2.4.2" />
        <plugin name="cordova-plugin-ionic-keyboard" spec="^2.1.2" />
        </plugin>
    </widget>

    

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)