我正在尝试从Android上的捆绑资产中读取文件,并且我注意到这花费了很多时间。这些资源是经过XOR加密的PDF文件(如果有人愿意,我很乐意提供它们)。
我使用react-native-fetch-blob@0.10.8
整理了一些基准:
import RNFetchBlob from "react-native-fetch-blob";
const { fs } = RNFetchBlob;
const t1 = performance.now();
fs.readFile(
fs.asset("bundle-assets://" + filename),
"ascii"
).then(data => {
console.log(performance.now() - t1);
});
我在运行该应用开发版本的Nexus 5上运行了该程序。所有测试都是在<ActivityIndicator />
在前台运行时运行的。结果以毫秒为单位,由performance.now()
返回:
size time (ms)
9.7 MB crash and burn
4 MB 144132.19999999274
3.2 MB 115553.40000000433
1.6 MB 59854.999999995925
781 KB 28170.59999999765
78 KB 3373.600000006263
什么可能导致react-native-fetch-blob
花费这么多时间?
相关的github issue