Crashlytics Android NDK:externalNativeBuild DEBUG崩溃符号工作RELEASE而不是

时间:2018-01-24 12:09:44

标签: android c++11 android-ndk crashlytics crashlytics-android

C ++代码中的崩溃适用于Crashlytics中的Debug版本,但不适用于版本构建。看起来在crashlyticsGenerateSymbolsRelease上没有上传/生成任何内容(只需几秒钟)。调试大约需要7分钟才能生成。

我已经删除了build和.externalNativeBuild目录。任何人都有提示问题来自哪里?

这是配置和日志:

build.gradle:

afterEvaluate {
    dexguardRelease.logging.level = 'INFO'
    assembleDebug.finalizedBy(crashlyticsUploadSymbolsDebug)
    assembleBeta.finalizedBy(crashlyticsUploadSymbolsBeta)
    assembleRelease.finalizedBy(crashlyticsUploadSymbolsRelease)
}

crashlytics {
    enableNdk true
}

Debug Build

Putting task artifact state for task ':app:crashlyticsGenerateSymbolsDebug' into context took 0.0 secs.
Executing task ':app:crashlyticsGenerateSymbolsDebug' (up-to-date check took 0.001 secs) due to:
  No history is available.
:app:crashlyticsGenerateSymbolsDebug (Thread[Task worker for ':' Thread 6,5,main]) completed. Took 7 mins 9.074 secs.
:app:crashlyticsCacheSymbolsDebug (Thread[Task worker for ':' Thread 6,5,main]) started.
:app:crashlyticsCacheSymbolsDebug
Putting task artifact state for task ':app:crashlyticsCacheSymbolsDebug' into context took 0.001 secs.
Executing task ':app:crashlyticsCacheSymbolsDebug' (up-to-date check took 0.001 secs) due to:
  No history is available.
:app:crashlyticsCacheSymbolsDebug (Thread[Task worker for ':' Thread 6,5,main]) completed. Took 13.225 secs.
:app:crashlyticsUploadSymbolsDebug (Thread[Task worker for ':' Thread 6,5,main]) started.
:app:crashlyticsUploadSymbolsDebug
Putting task artifact state for task ':app:crashlyticsUploadSymbolsDebug' into context took 0.001 secs.
Executing task ':app:crashlyticsUploadSymbolsDebug' (up-to-date check took 0.802 secs) due to:
  No history is available.
:app:crashlyticsUploadSymbolsDebug (Thread[Task worker for ':' Thread 6,5,main]) completed. Took 1 mins 16.179 secs.
:kerneldjinni:extractDebugAnnotations (Thread[Task worker for ':' Thread 6,5,main]) started.
:kerneldjinni:extractDebugAnnotations
Putting task artifact state for task ':kerneldjinni:extractDebugAnnotations' into context took 0.0 secs.
file or directory '/Users/mschicker/OutBankGIT/outbankandroid/sitbankingkernel/Android/kerneldjinni/src/debug/java', not found
Executing task ':kerneldjinni:extractDebugAnnotations' (up-to-date check took 0.014 secs) due to:
  Output property 'destinationDir' file /Users/mschicker/OutBankGIT/outbankandroid/sitbankingkernel/Android/kerneldjinni/build/intermediates/annotations/debug has changed.
  Output property 'typedefFile' file /Users/mschicker/OutBankGIT/outbankandroid/sitbankingkernel/Android/kerneldjinni/build/intermediates/typedefs.txt has changed.
:kerneldjinni:extractDebugAnnotations (Thread[Task worker for ':' Thread 6,5,main]) completed. Took 0.022 secs.
:kerneldjinni:transformResourcesWithMergeJavaResForDebug (Thread[Task worker for ':' Thread 6,5,main]) started.
:kerneldjinni:transformResourcesWithMergeJavaResForDebug
Putting task artifact state for task ':kerneldjinni:transformResourcesWithMergeJavaResForDebug' into context took 0.001 secs.



Release Build

:app:crashlyticsGenerateSymbolsRelease (Thread[Task worker for ':' Thread 2,5,main]) started.
:app:crashlyticsGenerateSymbolsRelease
Putting task artifact state for task ':app:crashlyticsGenerateSymbolsRelease' into context took 0.0 secs.
Executing task ':app:crashlyticsGenerateSymbolsRelease' (up-to-date check took 0.002 secs) due to:
  Output property '$1' file /Users/mschicker/OutBankGIT/outbankandroid/app/build/fabric/release/csyms has changed.
:app:crashlyticsGenerateSymbolsRelease (Thread[Task worker for ':' Thread 2,5,main]) completed. Took 0.126 secs.
:app:crashlyticsCacheSymbolsRelease (Thread[Task worker for ':' Thread 2,5,main]) started.
:app:crashlyticsCacheSymbolsRelease
Putting task artifact state for task ':app:crashlyticsCacheSymbolsRelease' into context took 0.0 secs.
Skipping task ':app:crashlyticsCacheSymbolsRelease' as it is up-to-date (took 0.0 secs).
:app:crashlyticsCacheSymbolsRelease UP-TO-DATE
:app:crashlyticsCacheSymbolsRelease (Thread[Task worker for ':' Thread 2,5,main]) completed. Took 0.002 secs.
:app:crashlyticsUploadSymbolsRelease (Thread[Task worker for ':' Thread 2,5,main]) started.
:app:crashlyticsUploadSymbolsRelease
Putting task artifact state for task ':app:crashlyticsUploadSymbolsRelease' into context took 0.0 secs.
Skipping task ':app:crashlyticsUploadSymbolsRelease' as it is up-to-date (took 0.0 secs).
:app:crashlyticsUploadSymbolsRelease UP-TO-DATE
:app:crashlyticsUploadSymbolsRelease (Thread[Task worker for ':' Thread 2,5,main]) completed. Took 0.001 secs.

1 个答案:

答案 0 :(得分:1)

我自己发现了这个问题。 cmake文件有一个规则来替换" -g"

string(REPLACE "-g" "" CMAKE_C_FLAGS ${CMAKE_C_FLAGS})
string(REPLACE "-g" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
string(REPLACE "-g" "" CMAKE_C_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
string(REPLACE "-g" "" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE})

这导致缺少符号。