我正忙于将FFMPEGMediametadatareTriever
pre-build.aar
文件添加到我的项目中,以减小每个体系结构的Apk文件大小。
这篇文章在他的gradle
中添加了以下内容:
android {
splits {
// Configures multiple APKs based on ABI.
abi {
// Enables building multiple APKs per ABI.
enable true
// By default all ABIs are included, so use reset() and include to specify that we only
// want APKs for x86, armeabi-v7a, and mips.
reset()
// Specifies a list of ABIs that Gradle should create APKs for.
include "x86", "x86_64", "armeabi-v7a", "arm64-v8a"
// Specifies that we want to also generate a universal APK that includes all ABIs.
universalApk false
}
}
//...
}
FFMPEGMediametadatareTriever
库提供以下.aar
文件:
.aar
文件按原样放置在我的libs
文件夹中(不为每个体系结构创建文件夹),还是应该将其添加到文件夹中?.aar
文件来支持所有的体系结构吗? 他这样实现了版本控制:
// Map for the version code that gives each ABI a value.
def abiCodes = ['x86':1, 'x86_64':2, 'armeabi-v7a':3, 'arm64-v8a':4]
// APKs for the same app that all have the same version information.
android.applicationVariants.all { variant ->
// Assigns a different version code for each output APK.
variant.outputs.each {
output ->
def abiName = output.getFilter(OutputFile.ABI)
output.versionCodeOverride = abiCodes.get(abiName, 0) * 100000 + variant.versionCode
}
}
我正在寻找一个可能使用过FFMPEGMediaMedaTatareTriever
的.aar
文件的人,该文件可以为我提供如何正确实现它的指导。
在了解了更多关于不同架构/ABI的知识之后,我认为可以肯定地说,如果我只包括armeabi-v7a
,那么大多数设备都将被“覆盖”?(我的最小sdk是16)。
那么这是否意味着我不必拆分APK,也不必担心版本控制?
然后我可以像正常一样导入.aar
-armv7-fmmr.aar
?
您可以使用指定所需目标ABI的产品口味生成不同的APK。然后可以根据每个产品的口味指定要使用哪个FMMR gradle依赖项或独立的AAR文件。请参阅此build.gradle文件以获取参考:
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion 28
defaultConfig {
applicationId "com.wseemann.example"
minSdkVersion 15
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "version"
productFlavors {
fat {
ndk {
abiFilters "armeabi", "armeabi-v7a", "x86", "mips", "x86_64", "arm64-v8a"
}
}
armeabi {
ndk {
abiFilter "armeabi"
}
}
armeabi_v7a {
ndk {
abiFilter "armeabi-v7a"
}
}
x86 {
ndk {
abiFilter "x86"
}
}
mips {
ndk {
abiFilter "mips"
}
}
x86_64 {
ndk {
abiFilter "x86_64"
}
}
arm64_v8a {
ndk {
abiFilter "arm64-v8a"
}
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'com.android.support:appcompat-v7:28.0.0-rc01'
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
// Product flavor, ABI specific dependencies
fatImplementation 'com.github.wseemann:FFmpegMediaMetadataRetriever:1.0.14'
armeabiImplementation 'com.github.wseemann:FFmpegMediaMetadataRetriever-armeabi:1.0.14'
armeabi_v7aImplementation'com.github.wseemann:FFmpegMediaMetadataRetriever-armeabi-v7a:1.0.14'
x86Implementation 'com.github.wseemann:FFmpegMediaMetadataRetriever-x86:1.0.14'
mipsImplementation 'com.github.wseemann:FFmpegMediaMetadataRetriever-mips:1.0.14'
x86_64Implementation 'com.github.wseemann:FFmpegMediaMetadataRetriever-x86_64:1.0.14'
arm64_v8aImplementation 'com.github.wseemann:FFmpegMediaMetadataRetriever-arm64-v8a:1.0.14'
}
我想创建一个维护数据库中条目的后端应用程序,并通过提供它们。因此我想使用。 是否有任何工具可以为此自动生成CRUD和服务类?因为对于每个实体,这些类型的操作总是相同或至少相似的。 例子: 或者是否有其他可能简化初始开发?
Ceph 独一无二地用统一的系统提供了对象、块、和文件存储功能,它可靠性高、管理简便、并且是自由软件。 Ceph 的强大足以改变贵公司的 IT 基础架构、和管理海量数据的能力。Ceph 可提供极大的伸缩性——供成千用户访问 PB 乃至 EB 级的数据。 Ceph 节点以普通硬件和智能守护进程作为支撑点, Ceph 存储集群组织起了大量节点,它们之间靠相互通讯来复制数据、并动态地重分布数据。 Cep
本文向大家介绍hdfs的体系结构相关面试题,主要包含被问及hdfs的体系结构时的应答技巧和注意事项,需要的朋友参考一下 解答: hdfs有namenode、secondraynamenode、datanode组成。 为n+1模式 namenode负责管理datanode和记录元数据 secondraynamenode负责合并日志 datanode负责存储数据
本文向大家介绍SAP HANA体系结构中的不同引擎类型,包括了SAP HANA体系结构中的不同引擎类型的使用技巧和注意事项,需要的朋友参考一下 在SAP HANA系统中,有三个基本引擎用于处理SAP HANA中的查询。使用以下引擎- 加入引擎 OLAP引擎 计算引擎 加入引擎 在SAP HANA中查询属性视图时使用 OLAP引擎 分析视图(无派生列)使用OLAP引擎 计算引擎 具有派生列的计算视图
冯·诺依曼体系结构 计算机处理的数据和指令一律用二进制数表示 顺序执行程序 计算机运行过程中,把要执行的程序和处理的数据首先存入主存储器(内存),计算机执行程序时,将自动地并按顺序从主存储器中取出指令一条一条地执行,这一概念称作顺序执行程序。 计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分组成。 数据的机内表示 二进制表示 机器数 由于计算机中符号和数字一样,都必须用二进制数串来表
主要内容:1. Data Access/Integration(数据访问/集成),2. Web 模块,3. Core Container(Spring 的核心容器),4. AOP、Aspects、Instrumentation 和 Messaging,5. Test 模块Spring 框架基本涵盖了企业级应用开发的各个方面,它包含了 20 多个不同的模块。 图1:Spring架构图 上图中包含了 Spring 框架的所有模块,这些模块可以满足一切企业级应用开发的需求,在开发过程中可以根据需求有选