Giter VIP home page Giter VIP logo

mnnkit's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mnnkit's Issues

姿态角

作者你好,能告诉下那三个姿态角的值是怎么换算的吗,想用你的模型回归角度做旋转,谢谢

【严重Bug】实锤mPortraitSegmentor.inference方法内存泄漏

使用官网提供的MNNKit Demo for Android,进入到人像分割界面放着不动,几分钟后会因内存溢出导致App崩溃。

使用
Samsung A9 Star(Android 10) 约6分钟
Mi 8(Android10) 约7分半
Smartisan R1(Android 8.1) 约2分半钟
Google pixel4(Android 11) 约5分半钟
四台设备均会出现该问题,只是时间长短不同。

MNNKit版本为 com.alibaba.android.mnnkit:portraitsegmentation:0.0.6

dsymutil warning

while linking with MNNFaceDetection.framework 0.0.4, xcode dysmutil spit out these warnings:

warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/3KUL5D6HFMZKL/Darwin-MI6WZSG1PNOM.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/3KUL5D6HFMZKL/Darwin-MI6WZSG1PNOM.pcm
note: Linking a static library that was built with -gmodules, but the module cache was not found.  Redistributable static libraries should never be built with module debugging enabled.  The debug experience will be degraded due to incomplete debug information.
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/3KUL5D6HFMZKL/_Builtin_intrinsics-1NVMHOZAVFWA2.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/3KUL5D6HFMZKL/_Builtin_intrinsics-1NVMHOZAVFWA2.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/Foundation-A3SOD99KJ0S9.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/Foundation-A3SOD99KJ0S9.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CommonCrypto-2BKBWM9L7D2GS.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CommonCrypto-2BKBWM9L7D2GS.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/Darwin-MI6WZSG1PNOM.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/Darwin-MI6WZSG1PNOM.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/MachO-CA7UA9IK83JK.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/MachO-CA7UA9IK83JK.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/ObjectiveC-1KD62J152BYGO.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/ObjectiveC-1KD62J152BYGO.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/Dispatch-12O7S7HHQXK9N.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/Dispatch-12O7S7HHQXK9N.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/zlib-MI6WZSG1PNOM.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/zlib-MI6WZSG1PNOM.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreMotion-RZ4DJFEI29KM.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreMotion-RZ4DJFEI29KM.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/LocalAuthentication-1HUI0898YUD5H.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/LocalAuthentication-1HUI0898YUD5H.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreLocation-DJ7O04274VT4.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreLocation-DJ7O04274VT4.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreTelephony-SKNXW9OJAIWC.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreTelephony-SKNXW9OJAIWC.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/UIKit-2LM3EQU7VVY4O.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/UIKit-2LM3EQU7VVY4O.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/AdSupport-2ZX7501G6C1T6.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/AdSupport-2ZX7501G6C1T6.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreGraphics-1TH4RJJRQVFOC.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreGraphics-1TH4RJJRQVFOC.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreFoundation-10I2D2XL7L7X9.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/CoreFoundation-10I2D2XL7L7X9.pcm
warning: /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/SystemConfiguration-2O070L5BFB5B1.pcm: No such file or directory
note: while processing /Users/tsia/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/2MSIKR0H4Y5WQ/SystemConfiguration-2O070L5BFB5B1.pcm

As the warning suggested:

Redistributable static libraries should never be built with module debugging enabled. The debug experience will be degraded due to incomplete debug information.

I believe tsia in the warning message might be your developer machine, simply grep, I got:

grep -r 'tsia' ./Pods/
Binary file ./Pods//MNNKitCore/MNNKitCore.framework/MNNKitCore matches
Binary file ./Pods//MNNFaceDetection/MNNFaceDetection.framework/MNNFaceDetection matches

So if possible, please disable debugging of the MNNKitCore and MNNFaceDetection library module, check if -gmodules was disabled.

请教关于人脸关键点遮挡分类的训练思路

你好,我知道模型和相关代码是不开源的
但是关于人脸关键点是否遮挡的这个分类,一直有疑问,很想请教一下

因为遮挡物可能是任意形状任意物体,很难通过在训练集中添加遮挡物并标注来训练成一个泛化性很好的模型,是否有其他更好的思路呢

新入门菜鸟一名,还望各位大牛指点,万分感谢!

部分华为手机找不到so文件

java.lang.UnsatisfiedLinkError
No implementation found for long com.alibaba.android.mnnkit.actor.FaceDetector.nativeCreateFrom(int, java.lang.String, java.lang.String) (tried Java_com_alibaba_android_mnnkit_actor_FaceDetector_nativeCreateFrom and Java_com_alibaba_android_mnnkit_actor_FaceDetector_nativeCreateFrom__ILjava_lang_String_2Ljava_lang_String_2)
com.alibaba.android.mnnkit.actor.FaceDetector.nativeCreateFrom(Native Method)

image

image

手机型号和apk内的so文件如图所示

MNNKit流程问题

这个流程是隔几帧才检测一次的把? 有更好的跟踪方案么

ios 编译报错

很多方法是不是都变了,看方法的大小写不一样
屏幕快照 2020-02-08 17 45 13
屏幕快照 2020-02-08 17 45 25

👍

分割的人像的头发处理能否进行边缘羽化

IOS issue

Hi,after I open MNNKitDemo.xcworkspace, an error occurred:

Showing All Messages No account for team "2QB4NHW4W2". Add a new account in the Accounts preference pane or verify that your accounts have valid credentials.

'MNN' uses the unencrypted 'http' protocol to transfer the Pod.

Update all pods
Updating local specs repositories
Analyzing dependencies
Downloading dependencies
Installing FMDB (2.7.5)
Installing MNN (0.2.2.2)

[!] Error installing MNN
[!] /usr/bin/curl -f -L -o /var/folders/t4/zsm4n0kd5rs25cfpkfjw60lm0000gn/T/d20200331-38860-1dqjspc/file.zip http://mnnkit.oss-cn-hangzhou.aliyuncs.com/pods-repo/MNN/0.2.2.2/MNN.framework.zip --create-dirs --netrc-optional --retry 2

% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
curl: (7) Failed to connect to 127.0.0.1 port 1080: Connection refused

[!] 'MNN' uses the unencrypted 'http' protocol to transfer the Pod. Please be sure you're in a safe network with only trusted hosts. Otherwise, please reach out to the library author to notify them of this security issue.

use format type rgba no result return

         ByteBuffer byteBuffer = getResizeByteBuffer(1); //glReadbuffer get buffer  GL_RGBA 格式
        long detectConfig = FaceDetectConfig.ACTIONTYPE_EYE_BLINK| FaceDetectConfig.ACTIONTYPE_MOUTH_AH|FaceDetectConfig.ACTIONTYPE_HEAD_YAW|FaceDetectConfig.ACTIONTYPE_HEAD_PITCH|FaceDetectConfig.ACTIONTYPE_BROW_JUMP;
        FaceDetectionReport[] results = mFaceDetector.inference(byteBuffer.array(), (int)(config.cameraOutWidth), (int)(config.cameraOutHeight), MNNCVImageFormat.RGBA, detectConfig, 0, 0, MNNFlipType.FLIP_NONE);
        LogUtils.e(TAG,"startdetect" + results);

按文档配置好混淆规则,开启混淆后,调用人脸识别就出现 fast json 栈溢出。请问能帮忙查一查原因吗?

一、问题:如标所述,问题栈如下。
at com.alibaba.fastjson.JSON.toJSON(JSON.java:852)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:932)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:852)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:932)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:852)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:932)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:852)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:932)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:852)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:932)
at com.alibaba.fastjson.JSON.toJSON(JSON.java:852)
at com.alibaba.android.mnnkit.monitor.MNNMonitor.a(SourceFile:324)
at com.alibaba.android.mnnkit.monitor.MNNMonitor.loadCommit(SourceFile:258)
at com.alibaba.android.mnnkit.actor.FaceDetector$1.run(SourceFile:132)
at java.lang.Thread.run(Thread.java:919)
二、环境
编译工具:
Android studio 4.0 / Android Gradle 3.5.0 / Gralde 5.4.1

三、混淆规则已按官方文档配置如下:

mnnkit

-dontwarn com.alibaba.android.mnnkit.**
-keep class com.alibaba.android.mnnkit.**{*;}

-ignorewarnings
-keep class * {
public private *;
}

什么情况下,函数inferenceWithPixelBuffer...返回nil?

  • (NSArray<MNNFaceDetectionReport *> *)inferenceWithPixelBuffer:(CVPixelBufferRef)pixelBuffer config:(MNNFaceDetectConfig)detectConfig
    angle:(float)inAngle outAngle:(float)outAngle flipType:(MNNFlipType)flipType
    error:(NSError *__autoreleasing *)error;
    这个函数,1)没有buffer,结果为nil;2)若buffer不空,且是没有人脸的正常视频,那也是有可能返回nil的,那么这种buffer不空情况下,推理结果为nil,是什么情况?还是哪里设置不对?3)有无第三种情况,返回结果为nil?

人脸检测pitch/yaw两个角度?

我看demo两个角度跟senseTime的结果差不多,想请教一下这两个角度数据怎么标注的啊?是模型直接预测出来的还是根据关键点计算的? 请阿里大佬们赐教下,感谢

Swift Setup

Hello,
I was seeing good results with this library in ObjectiveC, but I was required to integrate it into a Swift app. Below are my findings.

First the podfile

platform :ios, '13.0'
source 'https://github.com/CocoaPods/Specs.git'

target 'MyProject' do
  # Pods for MyProject
  pod 'MNNFaceDetection'
  pod 'MNNHandGestureDetection'
  pod 'MNNPortraitSegmentation'
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
    end
  end
end

Then in your target application you need to mark ENABLE_BITCODE to No

Enjoy

How can I use the android version of facedetection in android native c++ code?

Is it possible to directly invoke the android facedetection api from native c++ code without calling back java api?

I mean, is the c++ header file of the libmnnfacedetection.so public available?

since I could get the camera stream in android native c++, I'd like to invoke the c++ facedetection api from android native code for higher performance interactive exprience. What can I do to achieve that? Help..please.

稠密特征点

首先感谢作者的付出~

请教一下,目前开发版本中,是106个特征点,是否有稠密点(例如1K+)的计划呢?

想请教下其中手势检测的思路?

请教下,手势demo的思路是不是手势检测+手势追踪+手势识别,检测到手势的位置后对手进行追踪,然后将手势区域单独截取下来送进网络进行识别?是这样吗?

安卓编译失败

A problem occurred configuring project ':app'.
> java.lang.NullPointerException (no error message)

* Try:
Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Exception is:
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'.
	at org.gradle.configuration.project.LifecycleProjectEvaluator.wrapException(LifecycleProjectEvaluator.java:79)
	at org.gradle.configuration.project.LifecycleProjectEvaluator.addConfigurationFailure(LifecycleProjectEvaluator.java:73)
	at org.gradle.configuration.project.LifecycleProjectEvaluator.access$400(LifecycleProjectEvaluator.java:54)
	at org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate.run(LifecycleProjectEvaluator.java:200)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
	at org.gradle.configuration.project.LifecycleProjectEvaluator$EvaluateProject.run(LifecycleProjectEvaluator.java:110)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
	at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:68)
	at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:687)
	at org.gradle.api.internal.project.DefaultProject.evaluate(DefaultProject.java:140)
	at org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:35)
	at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:62)
	at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:41)
	at org.gradle.initialization.DefaultGradleLauncher$ConfigureBuild.run(DefaultGradleLauncher.java:274)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
	at org.gradle.initialization.DefaultGradleLauncher.configureBuild(DefaultGradleLauncher.java:182)
	at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:141)
	at org.gradle.initialization.DefaultGradleLauncher.executeTasks(DefaultGradleLauncher.java:124)
	at org.gradle.internal.invocation.GradleBuildController$1.call(GradleBuildController.java:77)
	at org.gradle.internal.invocation.GradleBuildController$1.call(GradleBuildController.java:74)
	at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:154)
	at org.gradle.internal.work.StopShieldingWorkerLeaseService.withLocks(StopShieldingWorkerLeaseService.java:38)
	at org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:96)
	at org.gradle.internal.invocation.GradleBuildController.run(GradleBuildController.java:74)
	at org.gradle.tooling.internal.provider.runner.ClientProvidedPhasedActionRunner.run(ClientProvidedPhasedActionRunner.java:61)
	at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
	at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
	at org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32)
	at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$3.run(RunAsBuildOperationBuildActionRunner.java:50)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.internal.operations.DelegatingBuildOperationExecutor.run(DelegatingBuildOperationExecutor.java:31)
	at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:45)
	at org.gradle.tooling.internal.provider.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:51)
	at org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:47)
	at org.gradle.launcher.exec.InProcessBuildActionExecuter$1.transform(InProcessBuildActionExecuter.java:44)
	at org.gradle.composite.internal.DefaultRootBuildState.run(DefaultRootBuildState.java:79)
	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:44)
	at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)
	at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:39)
	at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:25)
	at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:80)
	at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:53)
	at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:62)
	at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:34)
	at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:36)
	at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:25)
	at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)
	at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)
	at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:59)
	at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:31)
	at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:59)
	at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:44)
	at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:46)
	at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:30)
	at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)
	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
	at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
	at org.gradle.util.Swapper.swap(Swapper.java:38)
	at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:62)
	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:81)
	at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
	at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)
	at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
	at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:295)
	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
Caused by: java.lang.NullPointerException
	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:877)
	at com.android.build.gradle.internal.ndk.NdkHandler.getPlatformVersion(NdkHandler.java:167)
	at com.android.build.gradle.internal.ndk.NdkHandler.supports64Bits(NdkHandler.java:340)
	at com.android.build.gradle.internal.ndk.NdkHandler.getSupportedAbis(NdkHandler.java:412)
	at com.android.build.gradle.tasks.ExternalNativeJsonGenerator.create(ExternalNativeJsonGenerator.java:626)
	at com.android.build.gradle.internal.TaskManager.createExternalNativeBuildJsonGenerators(TaskManager.java:1552)
	at com.android.build.gradle.internal.ApplicationTaskManager.createTasksForVariantScope(ApplicationTaskManager.java:166)
	at com.android.build.gradle.internal.VariantManager.createTasksForVariantData(VariantManager.java:491)
	at com.android.build.gradle.internal.VariantManager.createAndroidTasks(VariantManager.java:365)
	at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:767)
	at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:81)
	at com.android.build.gradle.BasePlugin.lambda$createTasks$4(BasePlugin.java:651)
	at com.android.build.gradle.internal.crash.CrashReporting$afterEvaluate$1.execute(crash_reporting.kt:37)
	at com.android.build.gradle.internal.crash.CrashReporting$afterEvaluate$1.execute(crash_reporting.kt)
	at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1$1.run(DefaultListenerBuildOperationDecorator.java:155)
	at org.gradle.configuration.internal.DefaultUserCodeApplicationContext.reapply(DefaultUserCodeApplicationContext.java:58)
	at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction$1.run(DefaultListenerBuildOperationDecorator.java:152)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:300)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:292)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:174)
	at org.gradle.internal.operations.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90)
	at org.gradle.configuration.internal.DefaultListenerBuildOperationDecorator$BuildOperationEmittingAction.execute(DefaultListenerBuildOperationDecorator.java:149)
	at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:91)
	at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:80)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:42)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:230)
	at org.gradle.internal.event.BroadcastDispatch$SingletonDispatch.dispatch(BroadcastDispatch.java:149)
	at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:58)
	at org.gradle.internal.event.BroadcastDispatch$CompositeDispatch.dispatch(BroadcastDispatch.java:324)
	at org.gradle.internal.event.BroadcastDispatch$CompositeDispatch.dispatch(BroadcastDispatch.java:234)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:140)
	at org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:37)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
	at com.sun.proxy.$Proxy40.afterEvaluate(Unknown Source)
	at org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate$1.execute(LifecycleProjectEvaluator.java:187)
	at org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate$1.execute(LifecycleProjectEvaluator.java:184)
	at org.gradle.api.internal.project.DefaultProject.stepEvaluationListener(DefaultProject.java:1418)
	at org.gradle.configuration.project.LifecycleProjectEvaluator$NotifyAfterEvaluate.run(LifecycleProjectEvaluator.java:193)
	... 92 more

请问ndk的版本是什么呢?是否与这个有关?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.