当前位置: 首页 > news >正文

国外设计网站网址WordPress简洁主题单栏

国外设计网站网址,WordPress简洁主题单栏,什么主题 wordpress,孝义做网站1、前言 在包大小的占比中#xff0c;so文件的占比往往是最高的#xff0c;动辄几兆的大小多一个都会把包大小的指标打爆。 而在各厂商要求对手机CPU ARM架构进行分包适配的情况下#xff0c;你更需要知道哪些依赖是没有适配v7a/v8a的#xff0c;这将影响你的APP在应用市场…1、前言 在包大小的占比中so文件的占比往往是最高的动辄几兆的大小多一个都会把包大小的指标打爆。 而在各厂商要求对手机CPU ARM架构进行分包适配的情况下你更需要知道哪些依赖是没有适配v7a/v8a的这将影响你的APP在应用市场的审核。 所以搞清楚so文件和依赖的关系它不仅是一个技术指标归因的工具也是应对厂商分包适配的利器。 2、分析APK 我们一般分析APK是通过Android Studio提供的Analyze APK工具可以清晰的看到APK文件的组成部分比如lib文件夹下有哪些so文件但是却无法直观的看出这些so文件属于哪个依赖。 如下图 3、so文件怎么来的 想要知道so文件是属于哪个依赖那么得先搞清楚so文件是怎么来的。 如果你分析过apk里面的so文件你会发现除了项目中lib文件夹下手动添加的so文件之外还有一些不知道是哪来的。 要想搞清楚这个你还得知道我们的依赖是依赖的什么东西。 以okhttp为例 implementation com.squareup.okhttp3:okhttp:4.10.0我们通过GAV坐标依赖的实际是square公司发布的jar/aar文件 所以除了你自己添加的so文件之外其余的都是通过依赖导进来的。 ok整体思路我们捋一下 Gradle管理依赖会自动去下载jar/aar然后我们通过遍历所有依赖拿到对应的jar/arr再去获取其中对应的so文件。 听起来并不复杂实际上也很简单下面来实战一下。 4、实战 4.1、栗子 以阿里云音视频SDK为例它一定是包含so文件的我不信它不用FFmpeg。 添加示例依赖 //8.全功能直播推流含超低延时直播、RTC连麦短视频播放器美颜特效implementation com.aliyun.aio:AliVCSDK_Premium:6.4.0其他配置就不赘述了可以自行去看文档。 别忘了添加ndk配置否则so打不进去。 defaultConfig {ndk {abiFilters arm64-v8a, armeabi-v7a, armeabi-v8a}}4.2、遍历 ok准备工作到位写个插件遍历所有的依赖文件并打印出来。 Configuration configuration project.getConfigurations().getByName(applicationVariant.getName() CompileClasspath); configuration.forEach(file - {System.out.println(TAG file file.getName());String fineName file.getName();if (fineName.endsWith(.jar) || fineName.endsWith(.aar)) {try {JarFile jarFile new JarFile(file);for (Enumeration enums jarFile.entries(); enums.hasMoreElements(); ) {JarEntry jarEntry (JarEntry) enums.nextElement();System.out.println(TAG jarEntry jarEntry.getName());}} catch (IOException e) {throw new RuntimeException(e);}} });这里在Project评估完成之后获取Configuration对象然后遍历所有的依赖文件最后通过JarEntry把文件里面所有的子文件打出来。 输出 可以看到已经把所有的子文件都打出来了包括jni/、res/、assets/等等。 4.3、优化 上面的输出还不够直观我们在过滤一下只打印so文件然后优化一下打印的格式。 configuration.forEach(file - {String fineName file.getName();System.out.println(TAG fine name fineName);if (fineName.endsWith(.jar) || fineName.endsWith(.aar)) {try {JarFile jarFile new JarFile(file);for (Enumeration enums jarFile.entries(); enums.hasMoreElements(); ) {JarEntry jarEntry (JarEntry) enums.nextElement();if (jarEntry.getName().endsWith(.so)){System.out.println(TAG ----- so name jarEntry.getName());}}} catch (IOException e) {throw new RuntimeException(e);}} });最终效果 //... GradleXPlugin fine name AliVCSDK_Premium-6.4.0.aar GradleXPlugin ----- so name jni/arm64-v8a/libMNN_CL.so GradleXPlugin ----- so name jni/arm64-v8a/libalivcffmpeg.so GradleXPlugin ----- so name jni/arm64-v8a/liball_in_one.so GradleXPlugin ----- so name jni/arm64-v8a/libMNN.so GradleXPlugin ----- so name jni/armeabi-v7a/libMNN_CL.so GradleXPlugin ----- so name jni/armeabi-v7a/libalivcffmpeg.so GradleXPlugin ----- so name jni/armeabi-v7a/liball_in_one.so GradleXPlugin ----- so name jni/armeabi-v7a/libMNN.so //...是不是还挺简单的~ 5、最后 如果你不想自己写这个插件我也发布远端了按照下面三步走即可使用。 Step 1. Add the JitPack repository to your build file repositories {...maven { url https://jitpack.io } }Step 2. Add the dependency dependencies {classpath(com.github.yechaoa.GradleX:plugin:1.2) }Step 3. Add the Plugin Id to your build file and configure the gradleX{ } dsl plugins {id com.yechaoa.plugin.gradleX }gradleX {printDependencies falseanalysisSo true }ok以上即是本文介绍内容学废了吗写作不易快来三连~ 6、GitHub https://github.com/yechaoa/GradleX
http://www.zqtcl.cn/news/151011/

相关文章:

  • 新乐做网站优化网站上漂亮的甘特图是怎么做的
  • 新网站应该怎么做seo品牌推广方案思维导图
  • 想要网站导航推广页浅谈中兴电子商务网站建设
  • 免费引流在线推广成都网站优化费用
  • 老河口市网站佛山市点精网络科技有限公司
  • word模板免费网站seo引擎优化是做什么的
  • 办网站怎么赚钱鄠邑建站 网站建设
  • 宜春网站建设推广微信小程序开发
  • 巴南城乡建设网站免费网站建设软件大全
  • 湖南网站建设公公司没有自己的网站
  • 刚建设的网站如何推广网站恢复正常
  • 怎么做制作网站的教程永久免费空间免备案
  • 网站维护运营怎么做简单的手机网址大全
  • 网站建设规划设计公司排名使用模块化的网站
  • 南宁网站seo大概多少钱门户网站建设公司渠道
  • 如何建国际商城网站海门做网站公司
  • 做网站应该画什么图注册子公司流程及所需资料
  • 嵊州市建设银行网站怎么自己做游戏软件
  • 用模板快速建站中园建设银行网站
  • 网站建设罒金手指下拉壹陆韩国最新新闻消息
  • 东莞企业网站推广技巧wordpress怎么汉化
  • 17网站一起做网店如何下单iis服务器网站301重定向怎么做
  • 网站如何做线上支付功能seo网站推广优化费用
  • 贵州灵溪seo整站优化wordpress进行不
  • 三网一体网站建设网站开发环境分析
  • 广州白云机场网站建设查询域名备案信息
  • 苗族网站建设中牟做网站
  • 潍坊网站建设建站哪个网站的课件做的好处
  • 网站建设平台杭州网上交易平台
  • 您提交的网站域名无备案我想学网站建设