小编And*_*all的帖子

在使用Gradle在Windows上编译NDK源时,"没有规则来制定目标"

我正在尝试一个基本的Android应用程序,其中包含从源代码构建的NDK库.构建时出现以下错误:

gradlew assembleArm
:myapp:compileArmDebugNdk
make.exe: *** No rule to make target
`C:\Projects\MyApp\myapp\build\ndk\arm\debug\obj/local/armeabi-v7a/objs-debug/process/C_\Projects\MyApp\myapp\src\main\jni', needed by `C:\Projects\MyApp\myapp\build\ndk\arm\debug\obj/local/armeabi-v7a/objs-debug/process/C_\Projects\MyApp\myapp\src\main\jni\process.o'.  Stop.
:myapp:compileArmDebugNdk FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':myapp:compileArmDebugNdk'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    C:\android-ndk-r9d\ndk-build.cmd NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\Projects\MyApp\myapp\build\ndk\arm\debug\Android.mk APP_PLATFORM=android-18 NDK_OUT=C:\Projects\MyApp\myapp\build\ndk\arm\debug\obj NDK_LIBS_OUT=C:\Projects\MyApp\myapp\build\ndk\arm\debug\lib NDK_DEBUG=1 APP_STL=stlport_static APP_ABI=armeabi-v7a
Run Code Online (Sandbox Code Playgroud)

目标路径对我来说很奇怪.gradle生成的makefile如下所示:

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)

LOCAL_MODULE := process
LOCAL_CFLAGS := -DANDROID_NDK
LOCAL_SRC_FILES := \
C:\Projects\MyApp\myapp\src\main\jni\process.cpp \

LOCAL_C_INCLUDES += C:\Projects\MyApp\myapp\src\main\jni
LOCAL_C_INCLUDES += C:\Projects\MyApp\myapp\src\arm\jni
LOCAL_C_INCLUDES += C:\Projects\MyApp\myapp\src\debug\jni
LOCAL_C_INCLUDES += C:\Projects\MyApp\myapp\src\armDebug\jni

include $(BUILD_SHARED_LIBRARY) …
Run Code Online (Sandbox Code Playgroud)

android-ndk android-gradle-plugin

9
推荐指数
1
解决办法
8882
查看次数

如何使用Android Camera2 API捕获单个图像?

我正在使用Android Camera2 API来捕获和处理图像.图像处理响应于成功捕获.我遇到的问题是相机捕获了2张图像,我无法更改Camera2Basic示例中的代码以确保只捕获一张图像.通过向ImageSaver.run()方法中添加日志记录代码可以证明该问题Camera2BasicFragment.java

public void run() {
    Log.d("Camera2", "Saving image");
    ByteBuffer buffer = mImage.getPlanes()[0].getBuffer();
    ...
}
Run Code Online (Sandbox Code Playgroud)

编辑 - 经过进一步调查后,问题似乎出现在样本的实施中,而不是API的任何基础.在示例中,以下代码跟踪相机的状态更改,

 private void process(CaptureResult result) {
        switch (mState) {
            case STATE_PREVIEW: {
                // We have nothing to do when the camera preview is working normally.
                break;
            }
            case STATE_WAITING_LOCK: {
                int afState = result.get(CaptureResult.CONTROL_AF_STATE);
                if (CaptureResult.CONTROL_AF_STATE_FOCUSED_LOCKED == afState ||
                        CaptureResult.CONTROL_AF_STATE_NOT_FOCUSED_LOCKED == afState) {
                    // CONTROL_AE_STATE can be null on some devices
                    Integer aeState = result.get(CaptureResult.CONTROL_AE_STATE);
                    if (aeState == null …
Run Code Online (Sandbox Code Playgroud)

android

6
推荐指数
1
解决办法
7102
查看次数

使用 Git-LFS Azure DevOps Pipeline 进行身份验证失败

我在尝试在 Azure Devops Pipeline 中签出具有 git-lfs 支持的存储库时遇到以下身份验证失败:

##[command]git -c http.<url>="AUTHORIZATION: bearer ***" lfs fetch origin 8d51d72484c1b19a2427ed9f7736d410e43a8a29
fetch: Fetching reference 8d51d72484c1b19a2427ed9f7736d410e43a8a29
fatal: could not read Password for '<url>': terminal prompts disabled
batch response: Git credentials for <url> not found.
error: failed to fetch some objects from '<url>/info/lfs'
##[warning]Git lfs fetch failed with exit code 2, back off 5.476 seconds before retry.
Run Code Online (Sandbox Code Playgroud)

该存储库也托管在 Azure DevOps 上,管道配置如下:

jobs:
...
  steps:
  - checkout: self
    lfs: true
    persistCredentials: true
Run Code Online (Sandbox Code Playgroud)

它在未启用 lfs 的情况下成功,但仅下载文件指针。它需要什么凭据,我如何提供它们?

git-lfs azure-devops azure-pipelines

5
推荐指数
0
解决办法
1332
查看次数