背景
harmonyos Native & Android Native 对比
externalNativeBuild 区别
区别点
1.externalNativeBuild 区别
1.1harmonyos
ohos {
compileSdkVersion 5
defaultConfig {
compatibleSdkVersion 5
}
buildTypes {
release {
proguardOpt {
proguardEnabled false
rulesFiles 'proguard-rules.pro'
}
}
}
externalNativeBuild {
path "src/main/cpp/CMakeLists.txt"
// arguments "-v"
arguments "-DTEST_LIBRARY_SRC=${rootProject.projectDir}/"
abiFilters "arm64-v8a"
cppFlags "-std=c++17"
}
}
1.2Android
android {
compileSdk 32
defaultConfig {
minSdk 21
targetSdk 32
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
externalNativeBuild {
cmake {
cppFlags '-std=c++17 -D__STDC_LIMIT_MACROS'
arguments "-DHASH_LIBRARY_SRC=${rootProject.projectDir}/third_party/hash-library"
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "src/main/cpp/CMakeLists.txt"
version "3.18.1"
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
namespace 'com.mgg.checkenv'
}
1.3小结
externalNativeBuild 使用的位置,包含参数不一样。
2.log
2.1 鸿蒙log
#include <Hilog/log.h>
2.2 Android log
#include <android/log.h>
网友评论