镜头降落

This commit is contained in:
cxf 2026-04-08 13:39:51 +08:00
parent e450e975e2
commit 4c2d20f1b4
70 changed files with 369 additions and 167 deletions

View File

@ -2,28 +2,28 @@ C/C++ Structured Logx
v v
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\additional_project_files.txtC tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  „Àý”Õ3  òÐæÁ3u ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  Ò—Ÿ“Ö3  òÐæÁ3u
s s
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build.json  „Àý”Õ3 qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build.json  Ò—Ÿ“Ö3
þÐæÁ3z þÐæÁ3z
x x
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build_mini.json  „Àý”Õ3® §ÑæÁ3g vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build_mini.json  Ò—Ÿ“Ö3® §ÑæÁ3g
e e
cC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja  „Àý”Õ3ìÅ ÍÏæÁ3k cC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja  Ò—Ÿ“Ö3ìÅ ÍÏæÁ3k
i i
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja.txt  „Àý”Õ3p gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja.txt  Ò—Ÿ“Ö3p
n n
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build_file_index.txt  „Àý”Õ3 V ®ÑæÁ3q lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build_file_index.txt  Ò—Ÿ“Ö3 V ®ÑæÁ3q
o o
mC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json  „Àý”Õ3µ ÉÏæÁ3u mC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json  Ò—Ÿ“Ö3µ ÉÏæÁ3u
s s
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json.bin  „Àý”Õ3 ñ ÉÏæÁ3{ qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json.bin  Ò—Ÿ“Ö3 ñ ÉÏæÁ3{
y y
wC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\metadata_generation_command.txt  „Àý”Õ3 wC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\metadata_generation_command.txt  Ò—Ÿ“Ö3
° ªÑæÁ3n ° ªÑæÁ3n
l l
jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\prefab_config.json  „Àý”Õ3  ( ¬ÑæÁ3s jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\prefab_config.json  Ò—Ÿ“Ö3  ( ¬ÑæÁ3s
q q
oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\symbol_folder_index.txt  …Àý”Õ3  n ­ÑæÁ3Z oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\symbol_folder_index.txt  Ò—Ÿ“Ö3  n ­ÑæÁ3Z
X X
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  …Àý”Õ3 ¨ ÃÖ<C383>˜Á3 VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  Ò—Ÿ“Ö3 ¨ ÃÖ<C383>˜Á3

View File

@ -2,28 +2,28 @@ C/C++ Structured Logz
x x
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\additional_project_files.txtC vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  Áêã”Õ3 שœÁ3w ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  þÏŸ“Ö3 שœÁ3w
u u
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build.json  Áêã”Õ3¾ sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build.json  þÏŸ“Ö3¾
שœÁ3| שœÁ3|
z z
xC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build_mini.json  Áêã”Õ3שœÁ3i xC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build_mini.json  þÏŸ“Ö3שœÁ3i
g g
eC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja  Áêã”Õ3¤Æ ÑÖ©œÁ3m eC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja  þÏŸ“Ö3¤Æ ÑÖ©œÁ3m
k k
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja.txt  Áêã”Õ3r iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja.txt  þÏŸ“Ö3r
p p
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build_file_index.txt  Áêã”Õ3 V שœÁ3s nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build_file_index.txt  þÏŸ“Ö3 V שœÁ3s
q q
oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json  Áêã”Õ3Ð ÎÖ©œÁ3w oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json  þÏŸ“Ö3Ð ÎÖ©œÁ3w
u u
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json.bin  Áêã”Õ3 š ÎÖ©œÁ3} sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json.bin  þÏŸ“Ö3 š ÎÖ©œÁ3}
{ {
yC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\metadata_generation_command.txt  Áêã”Õ3 yC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\metadata_generation_command.txt  þÏŸ“Ö3
ºשœÁ3p ºשœÁ3p
n n
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\prefab_config.json  Áêã”Õ3  ( •שœÁ3u lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\prefab_config.json  €ÐŸ“Ö3  ( •שœÁ3u
s s
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\symbol_folder_index.txt  Áêã”Õ3  p •שœÁ3Z qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\symbol_folder_index.txt  €ÐŸ“Ö3  p •שœÁ3Z
X X
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  Áêã”Õ3 ¨ ÃÖ<C383>˜Á3 VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  €ÐŸ“Ö3 ¨ ÃÖ<C383>˜Á3

View File

@ -2,28 +2,28 @@ C/C++ Structured Logr
p p
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\additional_project_files.txtC nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  <EFBFBD>ëã”Õ3  ÑùÊÁ3o ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  âП“Ö3  ÑùÊÁ3o
m m
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build.json  <EFBFBD>ëã”Õ3ž kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build.json  âП“Ö3ž
×ùÊÁ3t ×ùÊÁ3t
r r
pC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build_mini.json  <EFBFBD>ëã”Õ3 ñùÊÁ3a pC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build_mini.json  âП“Ö3 ñùÊÁ3a
_ _
]C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja  <EFBFBD>ëã”Õ3ÎÅ æøÊÁ3e ]C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja  âП“Ö3ÎÅ æøÊÁ3e
c c
aC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja.txt  <EFBFBD>ëã”Õ3j aC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja.txt  âП“Ö3j
h h
fC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build_file_index.txt  <EFBFBD>ëã”Õ3 V öùÊÁ3k fC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build_file_index.txt  âП“Ö3 V öùÊÁ3k
i i
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json  <EFBFBD>ëã”Õ3¬ áøÊÁ3o gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json  âП“Ö3¬ áøÊÁ3o
m m
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json.bin  <EFBFBD>ëã”Õ3 è áøÊÁ3u kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json.bin  âП“Ö3 è áøÊÁ3u
s s
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\metadata_generation_command.txt  <EFBFBD>ëã”Õ3 qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\metadata_generation_command.txt  âП“Ö3
 óùÊÁ3h  óùÊÁ3h
f f
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\prefab_config.json  <EFBFBD>ëã”Õ3  ( ôùÊÁ3m dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\prefab_config.json  âП“Ö3  ( ôùÊÁ3m
k k
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\symbol_folder_index.txt  <EFBFBD>ëã”Õ3  h öùÊÁ3Z iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\symbol_folder_index.txt  âП“Ö3  h öùÊÁ3Z
X X
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  <EFBFBD>ëã”Õ3 ¨ ÃÖ<C383>˜Á3 VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  âП“Ö3 ¨ ÃÖ<C383>˜Á3

View File

@ -2,28 +2,28 @@ C/C++ Structured Logu
s s
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\additional_project_files.txtC qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\additional_project_files.txtC
A A
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  Íëã”Õ3  婜Á3r ?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint  ÌÑŸ“Ö3  婜Á3r
p p
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build.json  Íëã”Õ3ª nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build.json  ÌÑŸ“Ö3ª
<20>婜Á3w <20>婜Á3w
u u
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build_mini.json  Íëã”Õ3¢ •婜Á3d sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build_mini.json  ÌÑŸ“Ö3¢ •婜Á3d
b b
`C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja  Íëã”Õ3ÝÅ ×䩜Á3h `C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja  ÎÑŸ“Ö3ÝÅ ×䩜Á3h
f f
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja.txt  Íëã”Õ3m dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja.txt  ÎÑŸ“Ö3m
k k
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build_file_index.txt  Íëã”Õ3 V —婜Á3n iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build_file_index.txt  ÎÑŸ“Ö3 V —婜Á3n
l l
jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json  Íëã”Õ3± Ó䩜Á3r jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json  ÎÑŸ“Ö3± Ó䩜Á3r
p p
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json.bin  Íëã”Õ3 í Ó䩜Á3x nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json.bin  ÎÑŸ“Ö3 í Ó䩜Á3x
v v
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\metadata_generation_command.txt  Íëã”Õ3 tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\metadata_generation_command.txt  ÎÑŸ“Ö3
¡ •婜Á3k ¡ •婜Á3k
i i
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\prefab_config.json  Íëã”Õ3  ( 婜Á3p gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\prefab_config.json  ÎÑŸ“Ö3  ( 婜Á3p
n n
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\symbol_folder_index.txt  Íëã”Õ3  k —婜Á3Z lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\symbol_folder_index.txt  ÎÑŸ“Ö3  k —婜Á3Z
X X
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  Íëã”Õ3 ¨ ÃÖ<C383>˜Á3 VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt  ÎÑŸ“Ö3 ¨ ÃÖ<C383>˜Á3

View File

@ -1,6 +1,6 @@
[ [
{ {
"directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/p1g6s634/arm64-v8a", "directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/572l4p11/arm64-v8a",
"command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=aarch64-none-linux-android24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp", "command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=aarch64-none-linux-android24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp",
"file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp" "file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp"
} }

View File

@ -1,6 +1,6 @@
[ [
{ {
"directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/p1g6s634/armeabi-v7a", "directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/572l4p11/armeabi-v7a",
"command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=armv7-none-linux-androideabi24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -march=armv7-a -mthumb -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp", "command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=armv7-none-linux-androideabi24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -march=armv7-a -mthumb -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp",
"file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp" "file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp"
} }

View File

@ -1,6 +1,6 @@
[ [
{ {
"directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/p1g6s634/x86", "directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/572l4p11/x86",
"command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=i686-none-linux-android24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp", "command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=i686-none-linux-android24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp",
"file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp" "file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp"
} }

View File

@ -1,6 +1,6 @@
[ [
{ {
"directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/p1g6s634/x86_64", "directory": "C:/Users/24171/OneDrive/Desktop/msdk/400apiqwq/ams/Opencv/.cxx/Debug/572l4p11/x86_64",
"command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=x86_64-none-linux-android24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp", "command": "D:\\androidstudio\\sdk\\ndk\\29.0.14206865\\toolchains\\llvm\\prebuilt\\windows-x86_64\\bin\\clang++.exe --target=x86_64-none-linux-android24 --sysroot=D:/androidstudio/sdk/ndk/29.0.14206865/toolchains/llvm/prebuilt/windows-x86_64/sysroot -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fno-limit-debug-info -fPIC -o CMakeFiles\\opencv_jni_shared.dir\\dummy.cpp.o -c C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp",
"file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp" "file": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams\\Opencv\\libcxx_helper\\dummy.cpp"
} }

View File

@ -112,6 +112,7 @@ android {
versionCode openCVersionCode versionCode openCVersionCode
versionName openCVersionName versionName openCVersionName
ndkVersion "29.0.14206865"
externalNativeBuild { externalNativeBuild {
cmake { cmake {

View File

@ -25,7 +25,10 @@
"variantName": "debug", "variantName": "debug",
"isDebuggableEnabled": true, "isDebuggableEnabled": true,
"validAbiList": [ "validAbiList": [
"ARM64_V8A" "ARMEABI_V7A",
"ARM64_V8A",
"X86",
"X86_64"
], ],
"buildTargetSet": [ "buildTargetSet": [
"opencv_jni_shared" "opencv_jni_shared"
@ -132,7 +135,6 @@
"rootBuildGradleFolder": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams", "rootBuildGradleFolder": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams",
"sdkFolder": "D:\\androidstudio\\sdk", "sdkFolder": "D:\\androidstudio\\sdk",
"isBuildOnlyTargetAbiEnabled": true, "isBuildOnlyTargetAbiEnabled": true,
"ideBuildTargetAbi": "arm64-v8a,armeabi-v7a,armeabi",
"isCmakeBuildCohabitationEnabled": false, "isCmakeBuildCohabitationEnabled": false,
"isPrefabEnabled": false "isPrefabEnabled": false
}, },

View File

@ -6,3 +6,10 @@ generate_cxx_metadata
write-metadata-json-to-file 10ms write-metadata-json-to-file 10ms
generate_cxx_metadata completed in 118ms generate_cxx_metadata completed in 118ms
# C/C++ build system timings
generate_cxx_metadata
[gap of 25ms]
create-invalidation-state 48ms
[gap of 27ms]
generate_cxx_metadata completed in 100ms

View File

@ -4,3 +4,6 @@ generate_cxx_metadata
[gap of 18ms] [gap of 18ms]
generate_cxx_metadata completed in 43ms generate_cxx_metadata completed in 43ms
# C/C++ build system timings
generate_cxx_metadata 16ms

View File

@ -11,7 +11,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1793695528 "memoizedHashCode": 251355522
}, },
{ {
"level_": 0, "level_": 0,
@ -25,7 +25,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1225213556 "memoizedHashCode": -317126450
}, },
{ {
"level_": 0, "level_": 0,
@ -39,6 +39,6 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -159415290 "memoizedHashCode": -1701755296
} }
] ]

View File

@ -11,7 +11,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -659995836 "memoizedHashCode": 2092631454
}, },
{ {
"level_": 0, "level_": 0,
@ -25,7 +25,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -1987585904 "memoizedHashCode": 765041386
}, },
{ {
"level_": 0, "level_": 0,
@ -39,6 +39,6 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 953204644 "memoizedHashCode": -589135362
} }
] ]

View File

@ -10,3 +10,6 @@ generate_cxx_metadata completed in 31ms
# C/C++ build system timings # C/C++ build system timings
generate_cxx_metadata 20ms generate_cxx_metadata 20ms
# C/C++ build system timings
generate_cxx_metadata 17ms

View File

@ -237,3 +237,17 @@ generate_cxx_metadata
write-metadata-json-to-file 14ms write-metadata-json-to-file 14ms
generate_cxx_metadata completed in 139ms generate_cxx_metadata completed in 139ms
# C/C++ build system timings
generate_cxx_metadata
[gap of 25ms]
create-invalidation-state 69ms
[gap of 32ms]
write-metadata-json-to-file 13ms
generate_cxx_metadata completed in 140ms
# C/C++ build system timings
generate_cxx_metadata 15ms
# C/C++ build system timings
generate_cxx_metadata 14ms

View File

@ -1,3 +1,6 @@
# C/C++ build system timings # C/C++ build system timings
generate_cxx_metadata 17ms generate_cxx_metadata 17ms
# C/C++ build system timings
generate_cxx_metadata 12ms

View File

@ -11,7 +11,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -1766432340 "memoizedHashCode": 986194950
}, },
{ {
"level_": 0, "level_": 0,
@ -25,7 +25,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 2059026424 "memoizedHashCode": 516686418
}, },
{ {
"level_": 0, "level_": 0,
@ -39,6 +39,6 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 648210232 "memoizedHashCode": -894129774
} }
] ]

View File

@ -1,3 +1,6 @@
# C/C++ build system timings # C/C++ build system timings
generate_cxx_metadata 17ms generate_cxx_metadata 17ms
# C/C++ build system timings
generate_cxx_metadata 15ms

View File

@ -11,7 +11,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 969669418 "memoizedHashCode": -572670588
}, },
{ {
"level_": 0, "level_": 0,
@ -25,7 +25,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -927872110 "memoizedHashCode": 1824755180
}, },
{ {
"level_": 0, "level_": 0,
@ -39,6 +39,6 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1796585415 "memoizedHashCode": 254245409
} }
] ]

View File

@ -3,3 +3,8 @@ create_cxx_tasks
create-initial-cxx-model 56ms create-initial-cxx-model 56ms
create_cxx_tasks completed in 62ms create_cxx_tasks completed in 62ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model 58ms
create_cxx_tasks completed in 66ms

View File

@ -25,3 +25,20 @@ create_cxx_tasks
create-initial-cxx-model completed in 94ms create-initial-cxx-model completed in 94ms
create_cxx_tasks completed in 101ms create_cxx_tasks completed in 101ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model 69ms
[gap of 35ms]
create_cxx_tasks completed in 105ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model 88ms
[gap of 40ms]
create_cxx_tasks completed in 128ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model 57ms
create_cxx_tasks completed in 62ms

View File

@ -3211,3 +3211,45 @@ create_cxx_tasks
[gap of 12ms] [gap of 12ms]
create_cxx_tasks completed in 133ms create_cxx_tasks completed in 133ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model
create-module-model 13ms
[gap of 42ms]
create-module-model 11ms
[gap of 35ms]
create-initial-cxx-model completed in 101ms
[gap of 51ms]
create_cxx_tasks completed in 152ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model
create-module-model 12ms
[gap of 41ms]
create-module-model 12ms
[gap of 33ms]
create-initial-cxx-model completed in 98ms
create_cxx_tasks completed in 107ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model 55ms
create_cxx_tasks completed in 61ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model
create-module-model 13ms
create-variant-model 10ms
create-ARMEABI_V7A-model 10ms
create-ARM64_V8A-model 10ms
[gap of 17ms]
create-module-model 15ms
create-ARMEABI_V7A-model 10ms
create-X86-model 11ms
create-X86_64-model 11ms
create-initial-cxx-model completed in 135ms
[gap of 75ms]
create_cxx_tasks completed in 210ms

View File

@ -6,3 +6,8 @@ create_cxx_tasks
create-initial-cxx-model completed in 87ms create-initial-cxx-model completed in 87ms
create_cxx_tasks completed in 95ms create_cxx_tasks completed in 95ms
# C/C++ build system timings
create_cxx_tasks
create-initial-cxx-model 67ms
create_cxx_tasks completed in 74ms

View File

@ -11,7 +11,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 736145757 "memoizedHashCode": -395356504
}, },
{ {
"level_": 0, "level_": 0,
@ -25,7 +25,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1528333860 "memoizedHashCode": 396831599
}, },
{ {
"level_": 0, "level_": 0,
@ -39,7 +39,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1068589815 "memoizedHashCode": -62912446
}, },
{ {
"level_": 0, "level_": 0,
@ -53,7 +53,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -199358173 "memoizedHashCode": -1330860434
}, },
{ {
"level_": 0, "level_": 0,
@ -67,7 +67,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 369353858 "memoizedHashCode": -762148403
}, },
{ {
"level_": 0, "level_": 0,
@ -81,7 +81,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 734264116 "memoizedHashCode": -397238145
}, },
{ {
"level_": 0, "level_": 0,
@ -95,7 +95,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1041405350 "memoizedHashCode": -90096911
}, },
{ {
"level_": 0, "level_": 0,
@ -109,7 +109,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 483257630 "memoizedHashCode": -648244631
}, },
{ {
"level_": 0, "level_": 0,
@ -123,7 +123,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1152060383 "memoizedHashCode": 20558122
}, },
{ {
"level_": 0, "level_": 0,
@ -137,7 +137,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 1856521576 "memoizedHashCode": 725019315
}, },
{ {
"level_": 0, "level_": 0,
@ -151,7 +151,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -575631650 "memoizedHashCode": -1707133911
}, },
{ {
"level_": 0, "level_": 0,
@ -165,7 +165,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -6919619 "memoizedHashCode": -1138421880
}, },
{ {
"level_": 0, "level_": 0,
@ -179,7 +179,7 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": 898830444 "memoizedHashCode": -232671817
}, },
{ {
"level_": 2, "level_": 2,
@ -193,6 +193,6 @@
"fieldsDescending": {} "fieldsDescending": {}
}, },
"memoizedSize": -1, "memoizedSize": -1,
"memoizedHashCode": -944721408 "memoizedHashCode": -2076223669
} }
] ]

View File

@ -1 +1 @@
#Sat Jan 31 16:15:27 CST 2026 #Mon Apr 06 18:53:46 CST 2026

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\res"/><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\generated\res\rs\debug"/><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\res"><file path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\res\values\attrs.xml" qualifiers=""><declare-styleable name="CameraBridgeViewBase"> <merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\res"><file path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\res\values\attrs.xml" qualifiers=""><declare-styleable name="CameraBridgeViewBase">
<attr format="boolean" name="show_fps"/> <attr format="boolean" name="show_fps"/>
<attr format="integer" name="camera_id"> <attr format="integer" name="camera_id">
<enum name="any" value="-1"/> <enum name="any" value="-1"/>
<enum name="back" value="99"/> <enum name="back" value="99"/>
<enum name="front" value="98"/> <enum name="front" value="98"/>
</attr> </attr>
</declare-styleable></file></source><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\generated\res\rs\debug"/><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug" generated-set="debug$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"/><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated" generated-set="generated$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"/><mergedItems><configuration qualifiers=""><declare-styleable name="CameraBridgeViewBase"> </declare-styleable></file></source></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug" generated-set="debug$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\debug\res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\generated\res\resValues\debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="generated" generated-set="generated$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\generated\res\resValues\debug"/></dataSet><mergedItems><configuration qualifiers=""><declare-styleable name="CameraBridgeViewBase">
<attr format="boolean" name="show_fps"/> <attr format="boolean" name="show_fps"/>
<attr format="integer" name="camera_id"> <attr format="integer" name="camera_id">
<enum name="any" value="-1"/> <enum name="any" value="-1"/>

View File

@ -1,2 +1,2 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\main\assets"/><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\intermediates\shader_assets\debug\out"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\debug\assets"/></dataSet></merger> <merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\main\assets"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\src\debug\assets"/></dataSet><dataSet config="generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:&lt;dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\build\intermediates\shader_assets\debug\compileDebugShaders\out"/></dataSet></merger>

View File

@ -1,25 +1,17 @@
-- Merging decision tree log --- -- Merging decision tree log ---
manifest manifest
ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:1-4:12 ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:1-4:12
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:1-4:12
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:1-4:12 INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:1-4:12
package package
ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:3:7-27 ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:3:7-27
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
xmlns:android xmlns:android
ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:11-69 ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml:2:11-69
uses-sdk uses-sdk
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml reason: use-sdk injection requested INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml reason: use-sdk injection requested
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
android:targetSdkVersion android:targetSdkVersion
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
android:minSdkVersion android:minSdkVersion
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
ADDED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml
INJECTED from C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\java\AndroidManifest.xml

View File

@ -1,17 +1,18 @@
apply plugin: 'com.android.library' apply plugin: 'com.android.library'
apply plugin: 'kotlin-android' apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt' apply plugin: 'kotlin-kapt'
android { android {
namespace "dji.v5.ux"
compileSdkVersion 32 compileSdkVersion 32
resourcePrefix "uxsdk_" resourcePrefix "uxsdk_"
defaultConfig { defaultConfig {
minSdkVersion 24 minSdkVersion 24
targetSdkVersion 32 targetSdkVersion 35
versionCode 1 versionCode 1
versionName "1.0" versionName "1.0"
ndkVersion "29.0.14206865"
} }
compileOptions { compileOptions {
@ -62,7 +63,8 @@ dependencies {
api 'com.google.android.gms:play-services-places:16.0.0' api 'com.google.android.gms:play-services-places:16.0.0'
api 'com.google.android.gms:play-services-maps:16.0.0' //api 'com.google.android.gms:play-services-maps:16.0.0'
api 'com.google.android.gms:play-services-maps:18.2.0'
api 'com.google.android.gms:play-services-location:16.0.0' api 'com.google.android.gms:play-services-location:16.0.0'
api 'com.google.android.gms:play-services-base:16.0.0' api 'com.google.android.gms:play-services-base:16.0.0'

View File

@ -246,7 +246,7 @@ open class UnitModeListItemWidget @JvmOverloads constructor(
val str1 = SpannableString(getString(R.string.uxsdk_dialog_unit_change_notice)) val str1 = SpannableString(getString(R.string.uxsdk_dialog_unit_change_notice))
str1.setSpan(AlignmentSpan.Standard(Layout.Alignment.ALIGN_NORMAL), 0, str1.length, 0) str1.setSpan(AlignmentSpan.Standard(Layout.Alignment.ALIGN_NORMAL), 0, str1.length, 0)
builder.appendln(str1).appendln() builder.appendLine(str1).appendLine()
val str2 = SpannableString(resources.getString(R.string.uxsdk_dialog_unit_change_example)) val str2 = SpannableString(resources.getString(R.string.uxsdk_dialog_unit_change_example))
str2.setSpan(AlignmentSpan.Standard(Layout.Alignment.ALIGN_CENTER), 0, str2.length, 0) str2.setSpan(AlignmentSpan.Standard(Layout.Alignment.ALIGN_CENTER), 0, str2.length, 0)

View File

@ -5,16 +5,17 @@ plugins {
} }
android { android {
compileSdk 32 compileSdk 35
defaultConfig { defaultConfig {
applicationId "com.aros.apron" applicationId "com.aros.apron"
minSdk 24 minSdk 24
targetSdk 29 targetSdk 35
versionCode 46 versionCode 46
versionName "v1.9.1" versionName "v1.9.1"
multiDexEnabled true multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
ndkVersion "29.0.14206865"
ndk { ndk {
// SO库架构 // SO库架构
// abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64' // abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64', 'mips', 'mips64'
@ -103,11 +104,11 @@ android {
compileOptions { compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8 sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_17
} }
kotlinOptions { kotlinOptions {
jvmTarget = "1.8" jvmTarget = "17"
freeCompilerArgs += [ freeCompilerArgs += [
"-Xjvm-default=all", "-Xjvm-default=all",
@ -192,9 +193,9 @@ dependencies {
implementation 'com.commonsware.cwac:saferoom.x:1.3.0' implementation 'com.commonsware.cwac:saferoom.x:1.3.0'
implementation 'com.dji:dji-sdk-v5-aircraft:5.15.0' implementation 'com.dji:dji-sdk-v5-aircraft:5.17.0'
compileOnly 'com.dji:dji-sdk-v5-aircraft-provided:5.15.0' compileOnly 'com.dji:dji-sdk-v5-aircraft-provided:5.17.0'
implementation 'com.dji:dji-sdk-v5-networkImp:5.15.0' implementation 'com.dji:dji-sdk-v5-networkImp:5.17.0'
// implementation 'com.shd:dji-uxsdk:5.9.1' // implementation 'com.shd:dji-uxsdk:5.9.1'
@ -249,4 +250,5 @@ dependencies {
implementation files('libs/AIKit.aar') implementation files('libs/AIKit.aar')
} }

View File

@ -44,6 +44,7 @@
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/Theme.ApronV5" android:theme="@style/Theme.ApronV5"
android:requestLegacyExternalStorage="true" android:requestLegacyExternalStorage="true"
android:extractNativeLibs="true"
android:networkSecurityConfig="@xml/network_security_config" android:networkSecurityConfig="@xml/network_security_config"
> >

View File

@ -296,6 +296,13 @@ open class ConnectionActivity : BaseActivity() {
.runtime() .runtime()
.permission(REQUIRED_PERMISSION_LIST) .permission(REQUIRED_PERMISSION_LIST)
.onGranted { .onGranted {
// 检查是否需要请求 MANAGE_EXTERNAL_STORAGE 权限
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.R) {
if (!android.os.Environment.isExternalStorageManager()) {
val intent = android.content.Intent(android.provider.Settings.ACTION_MANAGE_ALL_FILES_ACCESS_PERMISSION)
startActivity(intent)
}
}
observeSDKManagerStatus() observeSDKManagerStatus()
} }
.onDenied { .onDenied {

View File

@ -37,6 +37,7 @@ import com.aros.apron.manager.MediaManager
import com.aros.apron.manager.MissionV3Manager import com.aros.apron.manager.MissionV3Manager
import com.aros.apron.manager.NavigationSatelliteSystemManager import com.aros.apron.manager.NavigationSatelliteSystemManager
import com.aros.apron.manager.OSDManager import com.aros.apron.manager.OSDManager
import com.aros.apron.manager.PayloadWidgetManager
import com.aros.apron.manager.PerceptionManager import com.aros.apron.manager.PerceptionManager
import com.aros.apron.manager.RTKManager import com.aros.apron.manager.RTKManager
import com.aros.apron.manager.StickManager import com.aros.apron.manager.StickManager
@ -49,6 +50,7 @@ import com.aros.apron.tools.ApronArucoDetectPort
import com.aros.apron.tools.DroneHelper import com.aros.apron.tools.DroneHelper
import com.aros.apron.tools.DualCaptureHelper import com.aros.apron.tools.DualCaptureHelper
import com.aros.apron.tools.LogUtil import com.aros.apron.tools.LogUtil
import com.aros.apron.tools.MixedVisionLanding
import com.aros.apron.tools.MqttManager import com.aros.apron.tools.MqttManager
import com.aros.apron.tools.PreferenceUtils import com.aros.apron.tools.PreferenceUtils
import com.aros.apron.tools.SimplePortScanner import com.aros.apron.tools.SimplePortScanner
@ -703,6 +705,7 @@ open class MainActivity : BaseActivity() {
initFpvStream() initFpvStream()
startVtxHeartbeat() startVtxHeartbeat()
//PayloadWidgetManager.getInstance().initPayloadInfo();
MediaDataCenter.getInstance().cameraStreamManager.setVisionAssistViewDirection( MediaDataCenter.getInstance().cameraStreamManager.setVisionAssistViewDirection(
VisionAssistDirection.DOWN, object : CommonCallbacks.CompletionCallback { VisionAssistDirection.DOWN, object : CommonCallbacks.CompletionCallback {
@ -761,6 +764,7 @@ open class MainActivity : BaseActivity() {
} }
} else if (PreferenceUtils.getInstance().cameraLocationType == 4) { } else if (PreferenceUtils.getInstance().cameraLocationType == 4) {
if ((isFlightControllerConnect == null || isFlightControllerConnect != true) && (isCameraConnect == null || isCameraConnect != true)) { if ((isFlightControllerConnect == null || isFlightControllerConnect != true) && (isCameraConnect == null || isCameraConnect != true)) {
handler.postDelayed({ handler.postDelayed({
initDJIManager() initDJIManager()
@ -795,6 +799,7 @@ open class MainActivity : BaseActivity() {
//ApronArucoDetect.getInstance().init() //ApronArucoDetect.getInstance().init()
MissionV3Manager.getInstance().initMissionManager() MissionV3Manager.getInstance().initMissionManager()
enableStream() enableStream()
initMixedStream()
startVtxHeartbeat() startVtxHeartbeat()
GeoidManager.getInstance().init(this); GeoidManager.getInstance().init(this);
@ -971,8 +976,33 @@ open class MainActivity : BaseActivity() {
} }
@SuppressLint("SuspiciousIndentation") @SuppressLint("SuspiciousIndentation")
private fun initmixStream() { private fun initMixedStream() {
// 初始化融合视觉降落识别器
val mixedLanding = MixedVisionLanding.getInstance()
// 为 PORT_1云台相机添加帧监听器
cameraManager.addFrameListener(
ComponentIndexType.PORT_1,
ICameraStreamManager.FrameFormat.YUV420_888
) { frameData, _, _, width, height, _ ->
Movement.getInstance().isVtx = true
updateVtxHeartbeat()
streamReceive = true
// 使用融合视觉识别器处理云台相机帧
mixedLanding.processGimbalFrame(height, width, frameData, dictionary)
}
// 为 FPV下视相机添加帧监听器
cameraManager.addFrameListener(
ComponentIndexType.FPV,
ICameraStreamManager.FrameFormat.YUV420_888
) { frameData, _, _, width, height, _ ->
Movement.getInstance().isVtx = true
updateVtxHeartbeat()
streamReceive = true
// 使用融合视觉识别器处理下视相机帧
mixedLanding.processDownwardFrame(height, width, frameData, dictionary)
}
} }
@ -1179,6 +1209,12 @@ open class MainActivity : BaseActivity() {
}) })
FLAG_DOWN_LAND -> FLAG_DOWN_LAND ->
{
//重置降落变量
ApronArucoDetect.getInstance().setStartAruco(false);
ApronArucoDetectPort.getInstance().setStartAruco(false);
KeyManager.getInstance().performAction<EmptyMsg>( KeyManager.getInstance().performAction<EmptyMsg>(
KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding), KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding),
object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> { object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> {
@ -1191,6 +1227,8 @@ open class MainActivity : BaseActivity() {
LogUtil.log(TAG, "自动降落调用失败${error.description()}") LogUtil.log(TAG, "自动降落调用失败${error.description()}")
} }
}) })
}
FLAG_STOP_ARUCO -> FLAG_STOP_ARUCO ->
startArucoType = 0 startArucoType = 0

View File

@ -237,7 +237,6 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
// MissionDataBean data = new Gson().fromJson(new Gson().toJson(message.getData()), MissionDataBean.class); // MissionDataBean data = new Gson().fromJson(new Gson().toJson(message.getData()), MissionDataBean.class);
// Boolean generateKmz = Generakmztools.getInstance().generateKmz(data); // Boolean generateKmz = Generakmztools.getInstance().generateKmz(data);
synchronized(lock){ synchronized(lock){
if(Synchronizedstatus.isIsruning()){ if(Synchronizedstatus.isIsruning()){
LogUtil.log(TAG, "自检正在运行"); LogUtil.log(TAG, "自检正在运行");
@ -322,23 +321,48 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
break; break;
case Constant.CAMERA_SCREEN_DRAG: case Constant.CAMERA_SCREEN_DRAG:
LogUtil.log(TAG, "收到:负载控制—画面拖动控制" + jsonString); LogUtil.log(TAG, "收到:负载控制—画面拖动控制" + jsonString);
GimbalManager.getInstance().camera_screen_drag(message); if(ApronArucoDetect.getInstance().isStartAruco()||ApronArucoDetectPort.getInstance().isStartAruco()){
sendEvent2Server("自动降落不可以动负载",1);
return;
}else{
GimbalManager.getInstance().camera_screen_drag(message);
}
break; break;
case Constant.CAMERA_AIM: case Constant.CAMERA_AIM:
LogUtil.log(TAG, "收到:负载控制—双击成为 AIM" + jsonString); LogUtil.log(TAG, "收到:负载控制—双击成为 AIM" + jsonString);
CameraManager.getInstance().tapZoomAtTarget(message); if(ApronArucoDetect.getInstance().isStartAruco()||ApronArucoDetectPort.getInstance().isStartAruco()){
sendEvent2Server("自动降落不可以动负载",1);
return;
}else{
CameraManager.getInstance().tapZoomAtTarget(message);
}
break; break;
case Constant.CAMERA_FOCAL_LENGTH_SET: case Constant.CAMERA_FOCAL_LENGTH_SET:
LogUtil.log(TAG, "收到:负载控制—变焦" + jsonString); LogUtil.log(TAG, "收到:负载控制—变焦" + jsonString);
CameraManager.getInstance().setCameraZoomRatios(message); if(ApronArucoDetect.getInstance().isStartAruco()||ApronArucoDetectPort.getInstance().isStartAruco()){
sendEvent2Server("自动降落不可以动负载",1);
return;
}else{
CameraManager.getInstance().setCameraZoomRatios(message);
}
break; break;
case Constant.GIMBAL_RESET: case Constant.GIMBAL_RESET:
LogUtil.log(TAG, "收到:负载控制—重置云台" + jsonString); LogUtil.log(TAG, "收到:负载控制—重置云台" + jsonString);
GimbalManager.getInstance().gimbalReset(message); if(ApronArucoDetect.getInstance().isStartAruco()||ApronArucoDetectPort.getInstance().isStartAruco()){
sendEvent2Server("自动降落不可以动负载",1);
return;
}else{
GimbalManager.getInstance().gimbalReset(message);
}
break; break;
case Constant.CAMERA_LOOK_AT: case Constant.CAMERA_LOOK_AT:
LogUtil.log(TAG, "收到负载控制—Look At" + jsonString); LogUtil.log(TAG, "收到负载控制—Look At" + jsonString);
GimbalManager.getInstance().gimbalLookAt(message); if(ApronArucoDetect.getInstance().isStartAruco()||ApronArucoDetectPort.getInstance().isStartAruco()){
sendEvent2Server("自动降落不可以动负载",1);
return;
}else{
GimbalManager.getInstance().gimbalLookAt(message);
}
break; break;
case Constant.CAMERA_SCREEN_SPLIT: case Constant.CAMERA_SCREEN_SPLIT:
LogUtil.log(TAG, "收到:负载控制—分屏" + jsonString); LogUtil.log(TAG, "收到:负载控制—分屏" + jsonString);
@ -386,7 +410,12 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
break; break;
case Constant.CAMERA_FRAME_ZOOM: case Constant.CAMERA_FRAME_ZOOM:
LogUtil.log(TAG, "收到:框选变焦" + jsonString); LogUtil.log(TAG, "收到:框选变焦" + jsonString);
CameraManager.getInstance().camera_frame_zoom(message); if(ApronArucoDetect.getInstance().isStartAruco()||ApronArucoDetectPort.getInstance().isStartAruco()){
sendEvent2Server("自动降落不可以动负载",1);
return;
}else{
CameraManager.getInstance().camera_frame_zoom(message);
}
break; break;
case Constant.SPEAKER_AUDIO_PLAY_START: case Constant.SPEAKER_AUDIO_PLAY_START:
LogUtil.log(TAG, "收到:喊话器-开始播放音频" + jsonString); LogUtil.log(TAG, "收到:喊话器-开始播放音频" + jsonString);

View File

@ -188,7 +188,7 @@ public class AlternateLandingManager extends BaseManager {
} }
public void toAlternatePoint() { public void toAlternatePoint() {
if (Movement.getInstance().getElevation() < 10) { if (Movement.getInstance().getElevation() < 50) {
sendEvent2Server( "正在拉高去备降点",1); sendEvent2Server( "正在拉高去备降点",1);
raisesDrone(); raisesDrone();
} else { } else {
@ -228,20 +228,20 @@ public class AlternateLandingManager extends BaseManager {
Runnable runnable = new Runnable() { Runnable runnable = new Runnable() {
@Override @Override
public void run() { public void run() {
if (Movement.getInstance().getElevation() < 10) { if (Movement.getInstance().getElevation() < 50) {
sendVirtualStickAdvancedParam(); sendVirtualStickAdvancedParam();
handler.postDelayed(this, 200); handler.postDelayed(this, 200);
} else { } else {
VirtualStickManager.getInstance().disableVirtualStick(new CommonCallbacks.CompletionCallback() { VirtualStickManager.getInstance().disableVirtualStick(new CommonCallbacks.CompletionCallback() {
@Override @Override
public void onSuccess() { public void onSuccess() {
LogUtil.log(TAG, "到达10米,开始上传备降点航线"); LogUtil.log(TAG, "到达50米,开始上传备降点航线");
creatMissionAndUpload(); creatMissionAndUpload();
} }
@Override @Override
public void onFailure(@NonNull IDJIError idjiError) { public void onFailure(@NonNull IDJIError idjiError) {
LogUtil.log(TAG, "到达10米,取消虚拟摇杆控制失败:" + new Gson().toJson(idjiError)); LogUtil.log(TAG, "到达50米,取消虚拟摇杆控制失败:" + new Gson().toJson(idjiError));
creatMissionAndUpload(); creatMissionAndUpload();
} }
}); });

View File

@ -1062,10 +1062,11 @@ public class FlightManager extends BaseManager {
boolean needTriggerApronArucoLand = PreferenceUtils.getInstance().getNeedTriggerApronArucoLand(); boolean needTriggerApronArucoLand = PreferenceUtils.getInstance().getNeedTriggerApronArucoLand();
boolean needTriggerAlterArucoLand = PreferenceUtils.getInstance().getNeedTriggerAlterArucoLand(); boolean needTriggerAlterArucoLand = PreferenceUtils.getInstance().getNeedTriggerAlterArucoLand();
double thresholdMax = triggerToAlternatePoint ? FLYING_HEIGHT_THRESHOLD_MAX_ALTERNATE : FLYING_HEIGHT_THRESHOLD_MAX; double thresholdMax = triggerToAlternatePoint ? FLYING_HEIGHT_THRESHOLD_MAX_ALTERNATE : FLYING_HEIGHT_THRESHOLD_MAX;
LogUtil.log(TAG,"相对高度"+Movement.getInstance().getElevation()+"超声波高度"+Movement.getInstance().getUltrasonicHeight()); //LogUtil.log(TAG,"相对高度"+Movement.getInstance().getElevation()+"超声波高度"+Movement.getInstance().getUltrasonicHeight());
if (isFlying && (Movement.getInstance().getElevation() < 13 && Movement.getInstance().getUltrasonicHeight() < 50) && !isSendDetect) { if (isFlying && (Movement.getInstance().getElevation() < 15 && Movement.getInstance().getUltrasonicHeight() < 50) && !isSendDetect) {
LogUtil.log(TAG,"相对高度"+Movement.getInstance().getElevation()+"超声波高度"+Movement.getInstance().getUltrasonicHeight());
double flyingHeight = Movement.getInstance().getElevation(); double flyingHeight = Movement.getInstance().getElevation();
double thresholdMin = triggerToAlternatePoint ? FLYING_HEIGHT_THRESHOLD_MIN_ALTERNATE : FLYING_HEIGHT_THRESHOLD_MIN; double thresholdMin = triggerToAlternatePoint ? FLYING_HEIGHT_THRESHOLD_MIN_ALTERNATE : FLYING_HEIGHT_THRESHOLD_MIN;

View File

@ -325,4 +325,5 @@ public class GimbalManager extends BaseManager {
LogUtil.log(TAG, "云台未连接"); LogUtil.log(TAG, "云台未连接");
} }
} }
} }

View File

@ -841,21 +841,13 @@ public class MissionV3Manager extends BaseManager {
if (isConnect != null && isConnect) { if (isConnect != null && isConnect) {
IWaypointMissionManager missionManager = WaypointMissionManager.getInstance(); IWaypointMissionManager missionManager = WaypointMissionManager.getInstance();
//如果航线是暂停状态,直接恢复航线否则查询断点信息 //如果航线是暂停状态,直接恢复航线否则查询断点信息
if (Movement.getInstance().getMissionStateCode() == 7) { if (Movement.getInstance().getMissionStateCode() == 7) {
missionManager.resumeMission(new CommonCallbacks.CompletionCallback() { missionManager.resumeMission(new CommonCallbacks.CompletionCallback() {
@Override @Override
public void onSuccess() { public void onSuccess() {
sendMsg2Server(message); sendMsg2Server(message);
Movement.getInstance().setTask_status("in_progress"); Movement.getInstance().setTask_status("in_progress");
sendFlightTaskProgress2Server();
//继续就是指令 或者 航线
if (Movement.getInstance().getFlightmode() == 1) {
Movement.getInstance().setMode_code(5);
} else if (Movement.getInstance().getFlightmode() == 2) {
Movement.getInstance().setMode_code(17);
}
} }
@Override @Override
@ -872,7 +864,7 @@ public class MissionV3Manager extends BaseManager {
mainHandler.postDelayed(new Runnable() { mainHandler.postDelayed(new Runnable() {
@Override @Override
public void run() { public void run() {
WaypointMissionManager.getInstance().resumeMission(breakPointInfo, WaypointMissionManager.getInstance().startMission("aros", breakPointInfo,
new CommonCallbacks.CompletionCallback() { new CommonCallbacks.CompletionCallback() {
@Override @Override
public void onSuccess() { public void onSuccess() {
@ -880,7 +872,9 @@ public class MissionV3Manager extends BaseManager {
PreferenceUtils.getInstance().setIsNewRoute(false); PreferenceUtils.getInstance().setIsNewRoute(false);
LogUtil.log(TAG, "恢复断点航线成功"); LogUtil.log(TAG, "恢复断点航线成功");
Movement.getInstance().setTask_status("in_progress"); Movement.getInstance().setTask_status("in_progress");
sendFlightTaskProgress2Server();
} }
@Override @Override
public void onFailure(@NonNull IDJIError idjiError) { public void onFailure(@NonNull IDJIError idjiError) {
LogUtil.log(TAG, "恢复断点航线失败:" + getIDJIErrorMsg(idjiError)); LogUtil.log(TAG, "恢复断点航线失败:" + getIDJIErrorMsg(idjiError));

View File

@ -1,14 +1,18 @@
package com.aros.apron.manager; package com.aros.apron.manager;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import com.aros.apron.base.BaseManager; import com.aros.apron.base.BaseManager;
import com.aros.apron.entity.PayloadInfo; import com.aros.apron.entity.PayloadInfo;
import com.aros.apron.tools.LogUtil; import com.aros.apron.tools.LogUtil;
import com.aros.apron.xclog.XcFileLog;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.GsonBuilder; import com.google.gson.GsonBuilder;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import dji.sdk.keyvalue.key.FlightControllerKey; import dji.sdk.keyvalue.key.FlightControllerKey;
import dji.sdk.keyvalue.key.KeyTools; import dji.sdk.keyvalue.key.KeyTools;
import dji.v5.common.callback.CommonCallbacks; import dji.v5.common.callback.CommonCallbacks;
@ -45,33 +49,54 @@ public class PayloadWidgetManager extends BaseManager {
.serializeSpecialFloatingPointValues() // 这是关键 .serializeSpecialFloatingPointValues() // 这是关键
.create(); .create();
public void initPayloadInfo() { public void initPayloadInfo() {
Boolean isConnect = KeyManager.getInstance().getValue(KeyTools.createKey(FlightControllerKey.KeyConnection)); Boolean isConnect = KeyManager.getInstance().getValue(KeyTools.createKey(FlightControllerKey.KeyConnection));
if (isConnect != null && isConnect) { if (isConnect != null && isConnect) {
//负载信息
Map<PayloadIndexType, IPayloadManager> payloadManager = PayloadCenter.getInstance().getPayloadManager(); Map<PayloadIndexType, IPayloadManager> payloadManager = PayloadCenter.getInstance().getPayloadManager();
if (payloadManager != null) { if (payloadManager != null) {
IPayloadManager iPayloadManager = payloadManager.get(PayloadIndexType.PORT_1); IPayloadManager iPayloadManager = payloadManager.get(PayloadIndexType.PORT_1);
if (iPayloadManager != null) { if (iPayloadManager != null) {
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).pullWidgetInfoFromPayload(new CommonCallbacks.CompletionCallback() { PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).pullWidgetInfoFromPayload(new CommonCallbacks.CompletionCallback() {
@Override @Override
public void onSuccess() { public void onSuccess() {
//基础信息
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadBasicInfoListener(new PayloadBasicInfoListener() {
@Override
public void onPayloadBasicInfoUpdate(PayloadBasicInfo info) {
LogUtil.log(TAG, "左侧负载基础信息:" + info.toString());
XcFileLog.getInstace().w(TAG, "左侧负载基础信息:" + info.toString());
}
});
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadDataListener(new PayloadDataListener() {
@Override
public void onDataFromPayloadUpdate(byte[] data) {
LogUtil.log(TAG, "左侧负载数据信息:" +new String(data, java.nio.charset.StandardCharsets.UTF_8).replaceAll("[^\\x20-\\x7E\\u4e00-\\u9fa5]", ""));
XcFileLog.getInstace().w(TAG, "左侧负载数据信息:" +new String(data, java.nio.charset.StandardCharsets.UTF_8).replaceAll("[^\\x20-\\x7E\\u4e00-\\u9fa5]", ""));
}
});
//可以把负载设备控件打印 //可以把负载设备控件打印
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadWidgetInfoListener(new PayloadWidgetInfoListener() { PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadWidgetInfoListener(new PayloadWidgetInfoListener() {
@Override @Override
public void onPayloadWidgetInfoUpdate(PayloadWidgetInfo info) { public void onPayloadWidgetInfoUpdate(PayloadWidgetInfo info) {
LogUtil.log(TAG, "左侧负载控件信息:" + info.toString()); LogUtil.log(TAG, "左侧负载控件信息:" + info.toString());
XcFileLog.getInstace().w(TAG, "左侧负载控件信息:" + info.toString());
//如果负载为空 //如果负载为空
if(info.getConfigInterfaceWidgetList()==null||info.getMainInterfaceWidgetList()==null){ if (info.getConfigInterfaceWidgetList() == null || info.getMainInterfaceWidgetList() == null) {
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).pullWidgetInfoFromPayload(new CommonCallbacks.CompletionCallback() { PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).pullWidgetInfoFromPayload(new CommonCallbacks.CompletionCallback() {
@Override @Override
public void onSuccess() { public void onSuccess() {
LogUtil.log(TAG,"负载重复拉取成功"); LogUtil.log(TAG, "负载重复拉取成功");
} }
@Override @Override
public void onFailure(@NonNull IDJIError idjiError) { public void onFailure(@NonNull IDJIError idjiError) {
LogUtil.log(TAG,"负载重复拉取失败"); LogUtil.log(TAG, "负载重复拉取失败");
} }
}); });
} }
@ -81,7 +106,7 @@ public class PayloadWidgetManager extends BaseManager {
@Override @Override
public void onFailure(@NonNull IDJIError idjiError) { public void onFailure(@NonNull IDJIError idjiError) {
LogUtil.log(TAG,"负载第一次拉取失败"); LogUtil.log(TAG, "负载第一次拉取失败");
} }
}); });
} else { } else {
@ -90,26 +115,16 @@ public class PayloadWidgetManager extends BaseManager {
} else { } else {
LogUtil.log(TAG, "监听psdk数据失败:未检测到设备"); LogUtil.log(TAG, "监听psdk数据失败:未检测到设备");
} }
//负载基础信息
} else { } else {
LogUtil.log(TAG, "设备未连接"); LogUtil.log(TAG, "设备未连接");
} }
} }
// //设置三方负载控件 // //设置三方负载控件
// public void setWidget(MQMessage message) { // public void setWidget(MQMessage message) {
// Boolean isConnect = KeyManager.getInstance().getValue(KeyTools.createKey(FlightControllerKey.KeyConnection)); // Boolean isConnect = KeyManager.getInstance().getValue(KeyTools.createKey(FlightControllerKey.KeyConnection));

View File

@ -141,6 +141,7 @@ public class StickManager extends BaseManager {
}else if(Movement.getInstance().getFlightmode()==2){ }else if(Movement.getInstance().getFlightmode()==2){
Movement.getInstance().setMode_code(3); Movement.getInstance().setMode_code(3);
} }
Movement.getInstance().setOpendrc(false); Movement.getInstance().setOpendrc(false);
} }
LogUtil.log(TAG, "控制权已取消"); LogUtil.log(TAG, "控制权已取消");

View File

@ -338,14 +338,7 @@ public class ApronArucoDetect {
corners.addAll(tmpCorners); corners.addAll(tmpCorners);
return new MatOfInt(newIds); return new MatOfInt(newIds);
} }
/**
* 简化预处理双边滤波+CLAHE+高反差保留
* 参数别改适配H30T广角画质
*/
/**
* 增强版预处理双边滤波 + CLAHE + Unsharp Mask反锐化掩膜
* 参数别改amount=1.2 FPV 运动模糊的推荐强度
*/
private Mat fixedPreprocess(Mat src) { private Mat fixedPreprocess(Mat src) {
Mat result = new Mat(); Mat result = new Mat();
try { try {

View File

@ -55,13 +55,13 @@ public class LogWriter {
mThreadPool.execute(new Runnable() { mThreadPool.execute(new Runnable() {
@Override @Override
public void run() { public void run() {
System.out.println("thread"+" "+msg); System.out.println("LogWriter thread: " + msg);
synchronized (LogWriter.class){ synchronized (LogWriter.class){
if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){ System.out.println("LogWriter: checking directory: " + mDir.getAbsolutePath());
return;
}
if(!mDir.exists()){ if(!mDir.exists()){
mDir.mkdirs(); System.out.println("LogWriter: creating directory: " + mDir.getAbsolutePath());
boolean mkdirs = mDir.mkdirs();
System.out.println("LogWriter: directory created: " + mkdirs);
} }
if (level.equals("F")){ if (level.equals("F")){
mFileName="state_"+new SimpleDateFormat("yyyyMMdd").format(new Date())+".txt"; mFileName="state_"+new SimpleDateFormat("yyyyMMdd").format(new Date())+".txt";
@ -70,11 +70,20 @@ public class LogWriter {
} else{ } else{
mFileName=new SimpleDateFormat("yyyyMMdd").format(new Date())+".txt"; mFileName=new SimpleDateFormat("yyyyMMdd").format(new Date())+".txt";
} }
File logFile = new File(mDir+"/"+mFileName); // 使用 File 构造函数正确构建文件路径
File logFile = new File(mDir, mFileName);
System.out.println("LogWriter: log file path: " + logFile.getAbsolutePath());
System.out.println("LogWriter: log file exists: " + logFile.exists());
if(!logFile.exists()){ // 文件不存在创建文件 if(!logFile.exists()){ // 文件不存在创建文件
createFile(logFile); System.out.println("LogWriter: creating log file");
File createdFile = createFile(logFile);
System.out.println("LogWriter: log file created: " + (createdFile != null));
System.out.println("LogWriter: log file exists after create: " + logFile.exists());
} }
System.out.println("LogWriter: writing log to file");
doWrtiter(logFile, msg+LINE_SEPARATOR); doWrtiter(logFile, msg+LINE_SEPARATOR);
System.out.println("LogWriter: log written");
System.out.println("LogWriter: log file size after write: " + logFile.length());
} }
} }
}); });

View File

@ -20,14 +20,22 @@ public class XcFileLog extends BaseLog {
* 初始化配置文件 * 初始化配置文件
* */ * */
public static void init(XcLogBaseConfig xcLogBaseConfig){ public static void init(XcLogBaseConfig xcLogBaseConfig){
System.out.println("XcFileLog init start");
mXcLogBaseConfig = xcLogBaseConfig; mXcLogBaseConfig = xcLogBaseConfig;
if(xcLogBaseConfig == null){ // 默认配置 if(xcLogBaseConfig == null){ // 默认配置
mXcLogBaseConfig = new SimpleXcLogBaseConfig(); mXcLogBaseConfig = new SimpleXcLogBaseConfig();
System.out.println("XcFileLog init with default config");
} else {
System.out.println("XcFileLog init with custom config, log dir: " + xcLogBaseConfig.getLogDir());
} }
if(mXcFileLog == null){ if(mXcFileLog == null){
System.out.println("XcFileLog creating instance");
mXcFileLog = new XcFileLog(); mXcFileLog = new XcFileLog();
mDeleteHelper = new DeleteHelper(mXcLogBaseConfig); mDeleteHelper = new DeleteHelper(mXcLogBaseConfig);
mDeleteHelper.deleteCacheLog(); // 删除过期缓存 mDeleteHelper.deleteCacheLog(); // 删除过期缓存
System.out.println("XcFileLog init completed");
} else {
System.out.println("XcFileLog already initialized");
} }
} }

View File

@ -4,6 +4,9 @@ import android.os.Environment;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import com.aros.apron.app.ApronApp;
import java.io.File;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
/** /**
@ -26,6 +29,7 @@ public class XcLogConfig implements XcLogBaseConfig {
@Override @Override
public String getLogDir() { public String getLogDir() {
// 写入到外部存储根目录
return getSDCardPath()+"/DJIDemo/cache/log"; // 默认缓存路径 return getSDCardPath()+"/DJIDemo/cache/log"; // 默认缓存路径
} }

View File

@ -11,10 +11,10 @@ buildscript {
} }
dependencies { dependencies {
// Android Gradle Plugin UXSDK 使 // Android Gradle Plugin UXSDK 使
classpath "com.android.tools.build:gradle:7.4.2" classpath "com.android.tools.build:gradle:8.7.0"
// Kotlin UXSDK 使 // Kotlin UXSDK 使
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.21" //DJI MSDK classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.1.0" //DJI MSDK
// ... (remaining code) // ... (remaining code)
// classpath 'com.android.tools.build:gradle:7.1.3' // classpath 'com.android.tools.build:gradle:7.1.3'
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.9.0' classpath 'com.google.protobuf:protobuf-gradle-plugin:0.9.0'

View File

@ -2,7 +2,7 @@
org.gradle.jvmargs=-Xmx4096m -Dfile.encoding=UTF-8 org.gradle.jvmargs=-Xmx4096m -Dfile.encoding=UTF-8
android.useAndroidX=true android.useAndroidX=true
android.nonTransitiveRClass=true android.nonTransitiveRClass=true
KOTLIN_VERSION = 1.7.21 KOTLIN_VERSION = 2.1.0
android.enableJetifier=true android.enableJetifier=true
android.enableBuildCache=false android.enableBuildCache=false
android.defaults.buildfeatures.buildconfig=true android.defaults.buildfeatures.buildconfig=true

View File

@ -1,6 +1,6 @@
#Thu Oct 17 09:18:25 CST 2024 #Thu Oct 17 09:18:25 CST 2024
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip distributionUrl=https\://services.gradle.org/distributions/gradle-8.12-bin.zip
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists