SingmyAaronLan
SingmyAaronLan
  • 发布:2023-07-27 09:26
  • 更新:2024-03-10 09:14
  • 阅读:277

Type mismatch: inferred type is UTSArray<String> but Array<(out) String!>! was expected‌

分类:uts
import { UTSAndroid } from "io.dcloud.uts";  
import MediaScannerConnection from 'android.media.MediaScannerConnection';  

export function scanFile(paths : string[]) {  
    let context = UTSAndroid.getAppContext()  
    if (context != null){  
        MediaScannerConnection.scanFile(context, paths, null, function (path, uri) {  
            //...  
        })  
    }  
}

调用MediaScannerConnection.scanFile方法的话需要传入string[]类型的路径参数,这里导出的scanFile函数已经声明了paths 是string[]类型,编译出来还是报错,这个怎么搞啊

09:10:11.947 ‌error: Type mismatch: inferred type is UTSArray<String> but Array<(out) String!>! was expected‌
09:10:11.947 at uni_modules/***/utssdk/app-android/index.uts:6:42
09:10:11.947 4 | export function scanFile(paths : string[]) {
09:10:11.947 5 | let context = UTSAndroid.getAppContext()
09:10:11.947 6 | MediaScannerConnection.scanFile(context, paths, null, function (path, uri) {
09:10:11.947 | ^

2023-07-27 09:26 负责人:无 分享
已邀请:
DCloud_Android_THB

DCloud_Android_THB

尝试这样写一下

const temp = paths.toTypedArray()  

scanFile(temp)
52yaoer

52yaoer

我也遇见 需要调用 String[] var1, int[] var2, int[] var3这样的,不晓得怎么传参数进去了

要回复问题请先登录注册