亢龙
亢龙
  • 发布:2020-04-28 03:05
  • 更新:2020-09-26 17:18
  • 阅读:2344

android离线打包 可以使用,但总是报错 android_asset/null

分类:uni-app

按照官网的教程配置了离线打包的项目
https://nativesupport.dcloud.net.cn/AppDocs/usesdk/android

但是总是报错:

I/OpenGLRenderer: Davey! duration=1675ms; Flags=1, IntendedVsync=38055273149, Vsync=39271939767, OldestInputEvent=9223372036854775807, NewestInputEvent=0, HandleInputStart=39276638600, AnimationStart=39276681400, PerformTraversalsStart=39276755100, DrawStart=39716929600, SyncQueued=39718920500, SyncStart=39720521200, IssueDrawCommandsStart=39720560700, SwapBuffers=39727041300, FrameCompleted=39731880500, DequeueBufferDuration=312000, QueueBufferDuration=968000,   
E/weex: idle from create instance cache size is 0  
E/weex: end getBundleType type:Vue time:0  
E/timeline: createInstance :1589889602044  
W/Glide: Load failed for file:///android_asset/null with size [100x100]  
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource  
    There were 3 causes:  
    java.io.FileNotFoundException(/android_asset/null: open failed: ENOENT (No such file or directory))  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail  
      Cause (1 of 3): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class java.io.InputStream, LOCAL  
    There was 1 cause:  
    java.io.FileNotFoundException(/android_asset/null: open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail  
        Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed  
    There was 1 cause:  
    java.io.FileNotFoundException(/android_asset/null: open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail  
          Cause (1 of 1): class java.io.FileNotFoundException: /android_asset/null: open failed: ENOENT (No such file or directory)  
      Cause (2 of 3): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.os.ParcelFileDescriptor, LOCAL  
    There was 1 cause:  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail  
        Cause (1 of 1): class com.bumptech.glide.load.engine.GlideException: Fetch failed  
    There was 1 cause:  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail  
          Cause (1 of 1): class java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)  
      Cause (3 of 3): class com.bumptech.glide.load.engine.GlideException: Fetching data failed, class android.content.res.AssetFileDescriptor, LOCAL  
    There was 1 cause:  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail  
        Cause (1 of 1): class java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)  
I/Glide: Root cause (1 of 3)  
    java.io.FileNotFoundException: /android_asset/null: open failed: ENOENT (No such file or directory)  
        at libcore.io.IoBridge.open(IoBridge.java:496)  
        at java.io.FileInputStream.<init>(FileInputStream.java:159)  
        at java.io.FileInputStream.<init>(FileInputStream.java:115)  
        at android.content.ContentResolver.openInputStream(ContentResolver.java:1185)  
        at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResourceFromUri(StreamLocalUriFetcher.java:85)  
        at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResource(StreamLocalUriFetcher.java:60)  
        at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResource(StreamLocalUriFetcher.java:15)  
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.AssetPathFetcher.loadData(AssetPathFetcher.java:37)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)  
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:279)  
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)  
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)  
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)  
        at java.lang.Thread.run(Thread.java:919)  
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)  
     Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)  
        at libcore.io.Linux.open(Native Method)  
        at libcore.io.ForwardingOs.open(ForwardingOs.java:167)  
        at libcore.io.BlockGuardOs.open(BlockGuardOs.java:252)  
        at libcore.io.ForwardingOs.open(ForwardingOs.java:167)  
        at android.app.ActivityThread$AndroidOs.open(ActivityThread.java:7255)  
        at libcore.io.IoBridge.open(IoBridge.java:482)  
        at java.io.FileInputStream.<init>(FileInputStream.java:159)   
        at java.io.FileInputStream.<init>(FileInputStream.java:115)   
        at android.content.ContentResolver.openInputStream(ContentResolver.java:1185)   
        at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResourceFromUri(StreamLocalUriFetcher.java:85)   
        at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResource(StreamLocalUriFetcher.java:60)   
        at com.bumptech.glide.load.data.StreamLocalUriFetcher.loadResource(StreamLocalUriFetcher.java:15)   
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)   
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)   
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)   
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)   
        at com.bumptech.glide.load.data.AssetPathFetcher.loadData(AssetPathFetcher.java:37)   
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)   
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)   
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)   
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:279)   
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)   
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)   
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)   
        at java.lang.Thread.run(Thread.java:919)   
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)   
I/Glide: Root cause (2 of 3)  
    java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)  
        at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:315)  
        at android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:220)  
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1498)  
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1420)  
        at com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher.loadResource(FileDescriptorLocalUriFetcher.java:22)  
        at com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher.loadResource(FileDescriptorLocalUriFetcher.java:14)  
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.AssetPathFetcher.loadData(AssetPathFetcher.java:37)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)  
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:405)  
        at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:167)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.AssetPathFetcher.loadData(AssetPathFetcher.java:37)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)  
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:279)  
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)  
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)  
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)  
        at java.lang.Thread.run(Thread.java:919)  
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)  
I/Glide: Root cause (3 of 3)  
    java.io.FileNotFoundException: open failed: ENOENT (No such file or directory)  
        at android.os.ParcelFileDescriptor.openInternal(ParcelFileDescriptor.java:315)  
        at android.os.ParcelFileDescriptor.open(ParcelFileDescriptor.java:220)  
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1498)  
        at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:1420)  
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:22)  
        at com.bumptech.glide.load.data.AssetFileDescriptorLocalUriFetcher.loadResource(AssetFileDescriptorLocalUriFetcher.java:13)  
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:44)  
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)  
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:405)  
        at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:167)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.AssetPathFetcher.loadData(AssetPathFetcher.java:37)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)  
        at com.bumptech.glide.load.engine.DecodeJob.onDataFetcherFailed(DecodeJob.java:405)  
        at com.bumptech.glide.load.engine.SourceGenerator.onLoadFailed(SourceGenerator.java:119)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:167)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.LocalUriFetcher.loadData(LocalUriFetcher.java:49)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.startNextOrFail(MultiModelLoader.java:164)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.onLoadFailed(MultiModelLoader.java:154)  
        at com.bumptech.glide.load.data.AssetPathFetcher.loadData(AssetPathFetcher.java:37)  
        at com.bumptech.glide.load.model.MultiModelLoader$MultiFetcher.loadData(MultiModelLoader.java:100)  
        at com.bumptech.glide.load.engine.SourceGenerator.startNext(SourceGenerator.java:62)  
        at com.bumptech.glide.load.engine.DecodeJob.runGenerators(DecodeJob.java:309)  
        at com.bumptech.glide.load.engine.DecodeJob.runWrapped(DecodeJob.java:279)  
        at com.bumptech.glide.load.engine.DecodeJob.run(DecodeJob.java:235)  
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)  
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)  
        at java.lang.Thread.run(Thread.java:919)  
        at com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run(GlideExecutor.java:446)  
W/Glide: Load failed for file:///android_asset/null with size [100x100]  
    class com.bumptech.glide.load.engine.GlideException: Failed to load resource  
    There were 3 causes:  
    java.io.FileNotFoundException(/android_asset/null: open failed: ENOENT (No such file or directory))  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
    java.io.FileNotFoundException(open failed: ENOENT (No such file or directory))  
     call GlideException#logRootCauses(String) for more detail

file:///android_asset/null 不明白后面为什么会是null

目录结构

build.gradle

apply plugin: 'com.android.application'  

android {  
    compileSdkVersion 28  
    buildToolsVersion "29.0.3"  
    defaultConfig {  
        applicationId "cn.zjiai.zjpackage"  
        minSdkVersion 19  
        targetSdkVersion 26  
        versionCode 100  
        versionName "1.0.0"  
        multiDexEnabled true  
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"  
    }  
    buildTypes {  
        release {  
            minifyEnabled false  
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'  
        }  
    }  
    aaptOptions {  
        additionalParameters '--auto-add-overlay'  
        ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"  
    }  
}  

repositories {  
    flatDir {  
        dirs 'libs'  
    }  
}  

dependencies {  
    implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])  
    implementation "com.android.support:support-v4:28.0.0"  
    implementation "com.android.support:appcompat-v7:28.0.0"  
    implementation 'com.android.support:recyclerview-v7:28.0.0'  
    implementation 'com.android.support:multidex:1.0.3'  
    implementation 'com.facebook.fresco:fresco:1.13.0'  
    implementation "com.facebook.fresco:animated-gif:1.13.0"  
    implementation 'com.github.bumptech.glide:glide:4.9.0'  
    implementation 'com.alibaba:fastjson:1.1.46.android'  
}  

androidManifext.xml

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

    <uses-feature android:name="android.hardware.camera.autofocus"/>  
    <uses-permission android:name="android.permission.CALL_PHONE"/>  
    <uses-permission android:name="android.permission.CAMERA"/>  
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>  
    <uses-permission android:name="android.permission.FLASHLIGHT"/>  
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>  
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>  
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" tools:ignore="ProtectedPermissions"/>  
    <uses-permission android:name="android.permission.READ_CONTACTS"/>  
    <uses-permission android:name="android.permission.READ_LOGS" tools:ignore="ProtectedPermissions"/>  
    <uses-permission android:name="android.permission.RECORD_AUDIO"/>  
    <uses-permission android:name="android.permission.VIBRATE"/>  
    <uses-permission android:name="android.permission.WAKE_LOCK"/>  
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>  
    <uses-permission android:name="android.permission.WRITE_SETTINGS" tools:ignore="ProtectedPermissions"/>"  
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />  
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />  
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />  
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />  
    <uses-permission android:name="android.permission.INTERNET" />  
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />  
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />  
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />  
    <uses-permission android:name="android.permission.BLUETOOTH" />  
    <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />  

    <application android:allowBackup="true"  
                 android:label="@string/app_name"  
                 android:icon="@drawable/icon"  
                 android:roundIcon="@drawable/icon"  
                 android:supportsRtl="true"  
                 android:theme="@style/AppTheme">  

        <meta-data android:name="com.amap.api.v2.apikey"  
                   android:value=""/>  
        <service android:name="com.amap.api.location.APSService" />  

        <activity  
                android:name="io.dcloud.PandoraEntry"  
                android:configChanges="orientation|keyboardHidden|keyboard|navigation"  
                android:label="@string/app_name"  
                android:launchMode="singleTask"  
                android:hardwareAccelerated="true"  
                android:theme="@style/TranslucentTheme"  
                android:screenOrientation="user"  
                android:windowSoftInputMode="adjustResize" >  
            <intent-filter>  
                <action android:name="android.intent.action.MAIN" />  
                <category android:name="android.intent.category.LAUNCHER" />  
            </intent-filter>  
        </activity>  
        <activity  
                android:name="io.dcloud.PandoraEntryActivity"  
                android:launchMode="singleTask"  
                android:configChanges="orientation|keyboardHidden|screenSize|mcc|mnc|fontScale|keyboard"  
                android:hardwareAccelerated="true"  
                android:permission="com.miui.securitycenter.permission.AppPermissionsEditor"  
                android:screenOrientation="user"  
                android:theme="@style/DCloudTheme"  
                android:windowSoftInputMode="adjustResize">  
            <intent-filter>  
                <category android:name="android.intent.category.DEFAULT" />  
                <category android:name="android.intent.category.BROWSABLE" />  
                <action android:name="android.intent.action.VIEW" />  
                <data android:scheme="h56131bcf" />  
            </intent-filter>  
        </activity>  

    </application>  
</manifest>  

求大佬给条明路

2020-04-28 03:05 负责人:无 分享
已邀请:
hoofa

hoofa

SDK里有Demo项目HBuilder-Hello ,参照那个改呗

  • 亢龙 (作者)

    必然参照了啊,项目删了建,建了删不下10遍,直接在 hello 的项目上改也有两三遍,就是打包不成功。 这回是能打包成功,也能运行, 但在运行的时候就是会报上面的错,也不知道影响在哪里

    2020-05-20 01:00

test_a

test_a

插个眼,我等下试试我的方式打方式包有没有问题,如果没有就分享给你

  • test_a

    试了一下成功了,如果还有疑惑的话可以微信公众号搜ziseyunjian关注,回复“安卓”二字,会发送给你打包图文和视频演示,里面是以5+app项目打包举例子,我用上面的步骤打包uni-app也成了,后面我抽时间在公众号把uni-app打包的图文教程和视频演示整出来,希望大家伙多多支持

    2020-05-19 23:26

  • test_a

    你的aaptOptions {

    additionalParameters '--auto-add-overlay'

    ignoreAssetsPattern "!.svn:!.git:.:!CVS:!thumbs.db:!picasa.ini:!.scc:*~"

    }应该加错位置了,不该在buildTypes{}里面

    2020-05-19 23:29

  • test_a

    正确位置是android{

    aaptOptions{

    }

    }

    2020-05-19 23:31

  • 亢龙 (作者)

    回复 test_a: 配置文件应该是之前来回改给改乱了,我本地是正确的,我已经将问题中的配置文件换成我本地的了。我用手机大概看了下你的公众号,操作上看起来差不多。明天我在照着你的教程重新来一次试试,感谢回答

    2020-05-20 01:09

  • test_a

    回复 亢龙: 嗯哈,刚刚整理好uni-app打包教程,已经发在公众号啦

    2020-05-20 23:43

亢龙

亢龙 (作者)

已找到问题

是在引入 tarBar 底部导航的时候,其中的 iconPath, selectedIconPath ,uniapp 没有做非空判断,虽然文档上写着不是必须,但是如果没有值,就会报找不到资源的错

该问题目前已经被锁定, 无法添加新回复