更新到Android Studio 2.2 RC后,它要求我将gradle插件更新为2.2.0-rc1.当我更新时,我收到以下错误:
Error:Could not find com.android.tools.build:gradle:2.2.0-rc1.
Searched in the following locations:
https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.0-rc1/gradle-2.2.0-rc1.pom
https://jcenter.bintray.com/com/android/tools/build/gradle/2.2.0-rc1/gradle-2.2.0-rc1.jar
Required by:
:my_project:unspecified
Run Code Online (Sandbox Code Playgroud)
有关我如何解决它的任何线索?
我已经在Android Studio中使用本地代码构建了一个库。它有一些与时间相关的部分(在C中),这些部分必须处于一定的延迟水平下,我需要对其进行度量。因此,我已经实现了一些测量例程。但是,我不希望测量例程在版本编译中起作用。
因此,我定义了宏,这些宏将允许我根据构建类型进行编译或不进行代码编写:
在我的本机代码中:
#ifdef MEASURE
measureRoutine1();
if (MEASURE == 1) {
measureRoutine2();
}
#endif
Run Code Online (Sandbox Code Playgroud)
在我的gradle文件中:
buildTypes {
release {
signingConfig signingConfigs.storeSignature
debuggable false
jniDebuggable false
versionNameSuffix "2.3"
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
jniDebuggable true
minifyEnabled false
versionNameSuffix '2.3.1'
}
measure1 {
initWith debug
externalNativeBuild {
cmake {
cppFlags += "-DMEASURE=0"
cFlags += "-DMEASURE=0"
}
}
}
measure2 {
initWith debug
externalNativeBuild {
cmake {
cppFlags += "-DMEASURE=1"
cFlags += "-DMEASURE=1"
}
}
}
} …Run Code Online (Sandbox Code Playgroud) 我正在 Android 中处理音频缓冲区,我的设置如下:
我想减少第 2 步和第 4 步的延迟,即short to float 和float to short 转换。(不考虑 3-DSP 中的延迟,因为我稍后会处理)。
所以,我想使用 NEON SIMD 一次计算多个值。
我目前拥有的 2 和 4 是以下代码:
#define CONV16BIT 32768
#define CONVMYFLT (1./32768.)
static int i;
float * floatBuffer;
short * shortInBuffer;
short * shortOutBuffer;
...(malloc and init buffers method)
...(inside callback)
//2- short to float
for(i = 0; i < bufferSize; i++) {
floatBuffer[i] = (float) (shortInBuffer[i] * CONVMYFLT);
}
...(do dsp)
//4- float to short …Run Code Online (Sandbox Code Playgroud) 我试图用ac指针指向的地址进行汇编操作,现在我遇到的问题是我找不到将指针传递给寄存器然后在数据中执行操作然后存储值的方法到另一个输出指针.
这是我的代码:我错过了什么?
void asmfunc(short *pOut, short *pIn) {
asm volatile(
"ldr r0, [in];"
"ldr r1, [out];"
"mov r2, r0;"
"lsr r2, [r2], #1;"
"str r1, [r2];"
:[out] "=m" (pOut)
:[in] "m" (pIn)
);
}
Run Code Online (Sandbox Code Playgroud)