美文网首页
Android Studio运行、离线打包uni-app项目

Android Studio运行、离线打包uni-app项目

作者: Android_HMH | 来源:发表于2021-03-22 15:56 被阅读0次

    首先需要下载Android Studio
    下载HBuilderX
    下载Android离线打包SDK(https://nativesupport.dcloud.net.cn/AppDocs/download/android)


    一、创建android项目

    二、配置项目

    将Android离线打包SDK中的lib.5plus.base-release.aar、android-gif-drawable-release@[x.y.z].arr、uniapp-v8-release.aar、oaid_sdk_[x.y.z].aar拷贝到android项目的app的libs中([x.y.z]为你下载的最新的版本号)

    打开app -> build.gradle
    在android下面添加

    aaptOptions {       
        additionalParameters '--auto-add-overlay'       
        ignoreAssetsPattern "!.svn:!.git:.*:!CVS:!thumbs.db:!picasa.ini:!*.scc:*~"
    }

    在dependencies下面添加

    implementation fileTree(dir: 'libs', include: ['*.aar', '*.jar'], exclude: [])
    implementation 'com.github.bumptech.glide:glide:4.11.0'
    implementation 'com.alibaba:fastjson:1.1.46.android'
    implementation 'com.google.code.gson:gson:2.8.6'
    implementation 'com.facebook.fresco:fresco:1.13.0'
    implementation "com.facebook.fresco:animated-gif:1.13.0"
    implementation 'androidx.recyclerview:recyclerview:1.1.0'

    打开app -> src -> main -> AndroidManifest.xml将默认生成在application标签内的全部注释

    在application内添加

    <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>
    <!--provider节点必须添加--> 
    <provider
        android:name="io.dcloud.common.util.DCloud_FileProvider"
        android:authorities="${apk.applicationId}.dc.fileprovider"
        android:exported="false"
        android:grantUriPermissions="true"> 
            <meta-data
                android:name="android.support.FILE_PROVIDER_PATHS"
                android:resource="@xml/dcloud_file_provider"/>
    </provider>

    注意:要将provider中的${apk.applicationId}修改为你的应用包名。可以在AndroidManifest.xml的跟标签下查看

    创建asstes文件夹

    将Android离线打包SDK中assets下的data拷贝到项目中新建好的assets下
    HBuilderX导出项目

    导出成功

    将导出的__UNI__E085701文件夹拷贝到项目中assets文件夹下(这个文件夹名是uni-app的appId,不是固定的! 不是固定的! 不是固定的!)
    打开项目app -> src -> main -> assets -> data -> dcloud_control.xml将appid改为自己导出的appid

    三、运行

    点击运行会产生这个错误

    libs中的aar中用的Android SDK版本为19,但是我们创建的项目最小可以在Android SDK 16上运行所有报错。将app下的build.gradle中android中minSdkVersion改为19,等待Sync Now之后重新运行


    又会产生这个错误.意思和上面一样修改之后继续运行

    成功运行

    四、打包

    打包成功

    点击打开打包之后apk存放的文件夹。目录为app -> build -> outputs -> apk -> debug

    相关文章

      网友评论

          本文标题:Android Studio运行、离线打包uni-app项目

          本文链接:https://www.haomeiwen.com/subject/oylzcltx.html