添加了一键起飞上报喊话器上报
This commit is contained in:
parent
2109695a1e
commit
aa24702eb7
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logx
|
|||
v
|
||||
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\additional_project_files.txtC
|
||||
A
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ø¯À½Ä3 òÐæ›Á3u
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint Ï»€ÃÉ3 òÐæ›Á3u
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logz
|
|||
x
|
||||
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\additional_project_files.txtC
|
||||
A
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint à¶ù»Ä3 ‰×©œÁ3w
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ñЂœÉ3 ‰×©œÁ3w
|
||||
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|
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logr
|
|||
p
|
||||
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\additional_project_files.txtC
|
||||
A
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ×·ù»Ä3 ÑùÊ›Á3o
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ®Ò‚œÉ3 ÑùÊ›Á3o
|
||||
m
|
||||
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build.json ×·ù»Ä3ž
|
||||
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build.json ®Ò‚œÉ3ž
|
||||
×ùÊ›Á3t
|
||||
r
|
||||
pC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build_mini.json ×·ù»Ä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 ×·ù»Ä3ÎÅ æøÊ›Á3e
|
||||
]C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja ¯Ò‚œÉ3ÎÅ æøÊ›Á3e
|
||||
c
|
||||
aC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja.txt Ú·ù»Ä3j
|
||||
aC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja.txt ¯Ò‚œÉ3j
|
||||
h
|
||||
fC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build_file_index.txt Û·ù»Ä3
V öùÊ›Á3k
|
||||
fC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build_file_index.txt ¯Ò‚œÉ3
V öùÊ›Á3k
|
||||
i
|
||||
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json Û·ù»Ä3¬ áøÊ›Á3o
|
||||
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json ¯Ò‚œÉ3¬ áøÊ›Á3o
|
||||
m
|
||||
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json.bin Û·ù»Ä3 è áøÊ›Á3u
|
||||
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json.bin ¯Ò‚œÉ3 è áøÊ›Á3u
|
||||
s
|
||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\metadata_generation_command.txt Û·ù»Ä3
|
||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\metadata_generation_command.txt ¯Ò‚œÉ3
|
||||
’ óùÊ›Á3h
|
||||
f
|
||||
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\prefab_config.json Û·ù»Ä3
( ôùÊ›Á3m
|
||||
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\prefab_config.json ¯Ò‚œÉ3
( ôùÊ›Á3m
|
||||
k
|
||||
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\symbol_folder_index.txt Û·ù»Ä3
h öùÊ›Á3Z
|
||||
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\symbol_folder_index.txt ¯Ò‚œÉ3
h öùÊ›Á3Z
|
||||
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
|
||||
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logu
|
|||
s
|
||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\additional_project_files.txtC
|
||||
A
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint Ѹù»Ä3 ‹å©œÁ3r
|
||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ÚÓ‚œÉ3 ‹å©œÁ3r
|
||||
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
|
||||
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
|
||||
`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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
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
|
||||
|
|
@ -12,3 +12,10 @@ generate_cxx_metadata
|
|||
[gap of 32ms]
|
||||
generate_cxx_metadata completed in 99ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 24ms]
|
||||
create-invalidation-state 57ms
|
||||
[gap of 37ms]
|
||||
generate_cxx_metadata completed in 118ms
|
||||
|
||||
|
|
|
|||
|
|
@ -13,3 +13,9 @@ generate_cxx_metadata
|
|||
[gap of 29ms]
|
||||
generate_cxx_metadata completed in 94ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 31ms
|
||||
[gap of 28ms]
|
||||
generate_cxx_metadata completed in 67ms
|
||||
|
||||
|
|
|
|||
|
|
@ -12,3 +12,11 @@ generate_cxx_metadata
|
|||
[gap of 42ms]
|
||||
generate_cxx_metadata completed in 132ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 16ms]
|
||||
create-invalidation-state 49ms
|
||||
[gap of 25ms]
|
||||
write-metadata-json-to-file 11ms
|
||||
generate_cxx_metadata completed in 102ms
|
||||
|
||||
|
|
|
|||
|
|
@ -26,3 +26,10 @@ generate_cxx_metadata
|
|||
[gap of 23ms]
|
||||
generate_cxx_metadata completed in 74ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 11ms]
|
||||
create-invalidation-state 37ms
|
||||
[gap of 27ms]
|
||||
generate_cxx_metadata completed in 75ms
|
||||
|
||||
|
|
|
|||
|
|
@ -12,3 +12,10 @@ generate_cxx_metadata
|
|||
[gap of 37ms]
|
||||
generate_cxx_metadata completed in 117ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 20ms]
|
||||
create-invalidation-state 50ms
|
||||
[gap of 38ms]
|
||||
generate_cxx_metadata completed in 108ms
|
||||
|
||||
|
|
|
|||
|
|
@ -5,3 +5,10 @@ generate_cxx_metadata
|
|||
[gap of 30ms]
|
||||
generate_cxx_metadata completed in 93ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 12ms]
|
||||
create-invalidation-state 42ms
|
||||
[gap of 27ms]
|
||||
generate_cxx_metadata completed in 81ms
|
||||
|
||||
|
|
|
|||
|
|
@ -14,3 +14,10 @@ generate_cxx_metadata
|
|||
write-metadata-json-to-file 10ms
|
||||
generate_cxx_metadata completed in 102ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 32ms]
|
||||
create-invalidation-state 87ms
|
||||
[gap of 37ms]
|
||||
generate_cxx_metadata completed in 156ms
|
||||
|
||||
|
|
|
|||
|
|
@ -13,3 +13,10 @@ generate_cxx_metadata
|
|||
write-metadata-json-to-file 19ms
|
||||
generate_cxx_metadata completed in 227ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 14ms]
|
||||
create-invalidation-state 42ms
|
||||
[gap of 28ms]
|
||||
generate_cxx_metadata completed in 84ms
|
||||
|
||||
|
|
|
|||
|
|
@ -19,3 +19,27 @@ generate_cxx_metadata
|
|||
write-metadata-json-to-file 12ms
|
||||
generate_cxx_metadata completed in 136ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 22ms]
|
||||
create-invalidation-state 66ms
|
||||
[gap of 31ms]
|
||||
write-metadata-json-to-file 11ms
|
||||
generate_cxx_metadata completed in 131ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 14ms]
|
||||
create-invalidation-state 47ms
|
||||
[gap of 32ms]
|
||||
write-metadata-json-to-file 10ms
|
||||
generate_cxx_metadata completed in 105ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 23ms]
|
||||
create-invalidation-state 98ms
|
||||
[gap of 37ms]
|
||||
write-metadata-json-to-file 13ms
|
||||
generate_cxx_metadata completed in 173ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,10 @@ generate_cxx_metadata
|
|||
[gap of 18ms]
|
||||
generate_cxx_metadata completed in 34ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 21ms]
|
||||
create-invalidation-state 58ms
|
||||
[gap of 33ms]
|
||||
generate_cxx_metadata completed in 112ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,9 @@ generate_cxx_metadata
|
|||
[gap of 25ms]
|
||||
generate_cxx_metadata completed in 57ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 25ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 22ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,6 @@ generate_cxx_metadata
|
|||
[gap of 15ms]
|
||||
generate_cxx_metadata completed in 31ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 25ms
|
||||
|
||||
|
|
|
|||
|
|
@ -10,3 +10,9 @@ generate_cxx_metadata
|
|||
[gap of 18ms]
|
||||
generate_cxx_metadata completed in 37ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 10ms
|
||||
[gap of 17ms]
|
||||
generate_cxx_metadata completed in 30ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 24ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 20ms
|
||||
|
||||
|
|
|
|||
|
|
@ -5,3 +5,6 @@ generate_cxx_metadata
|
|||
[gap of 34ms]
|
||||
generate_cxx_metadata completed in 81ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 12ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,9 @@ generate_cxx_metadata
|
|||
[gap of 13ms]
|
||||
generate_cxx_metadata completed in 28ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 11ms
|
||||
[gap of 14ms]
|
||||
generate_cxx_metadata completed in 29ms
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1267503242
|
||||
"memoizedHashCode": 1164482061
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1835985214
|
||||
"memoizedHashCode": 596000089
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -39,6 +39,6 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1074353236
|
||||
"memoizedHashCode": -788628757
|
||||
}
|
||||
]
|
||||
|
|
@ -4,3 +4,6 @@ generate_cxx_metadata
|
|||
[gap of 18ms]
|
||||
generate_cxx_metadata completed in 40ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 25ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,18 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 23ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 12ms
|
||||
[gap of 13ms]
|
||||
generate_cxx_metadata completed in 29ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 19ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 11ms
|
||||
[gap of 18ms]
|
||||
generate_cxx_metadata completed in 33ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,12 @@ generate_cxx_metadata
|
|||
[gap of 13ms]
|
||||
generate_cxx_metadata completed in 25ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 10ms
|
||||
[gap of 15ms]
|
||||
generate_cxx_metadata completed in 27ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 16ms
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 573772690
|
||||
"memoizedHashCode": 1226785352
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -753817378
|
||||
"memoizedHashCode": -100804716
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -39,6 +39,6 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -2107994126
|
||||
"memoizedHashCode": -1454981464
|
||||
}
|
||||
]
|
||||
|
|
@ -1,3 +1,9 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 18ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 12ms
|
||||
[gap of 16ms]
|
||||
generate_cxx_metadata completed in 31ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,9 @@ generate_cxx_metadata 16ms
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 23ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 24ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 14ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 18ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 24ms
|
||||
|
||||
|
|
|
|||
|
|
@ -6,3 +6,11 @@ generate_cxx_metadata
|
|||
write-metadata-json-to-file 12ms
|
||||
generate_cxx_metadata completed in 151ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
[gap of 25ms]
|
||||
create-invalidation-state 72ms
|
||||
[gap of 34ms]
|
||||
write-metadata-json-to-file 13ms
|
||||
generate_cxx_metadata completed in 146ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 21ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 16ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 18ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 18ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 16ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 21ms
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -532663814
|
||||
"memoizedHashCode": 120348848
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1002172346
|
||||
"memoizedHashCode": -349159684
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -39,6 +39,6 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1881978758
|
||||
"memoizedHashCode": -1759975876
|
||||
}
|
||||
]
|
||||
|
|
@ -7,3 +7,9 @@ generate_cxx_metadata
|
|||
[gap of 14ms]
|
||||
generate_cxx_metadata completed in 29ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 19ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 15ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 16ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 11ms
|
||||
[gap of 14ms]
|
||||
generate_cxx_metadata completed in 28ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 23ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 18ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,9 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 22ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata
|
||||
create-invalidation-state 10ms
|
||||
[gap of 11ms]
|
||||
generate_cxx_metadata completed in 24ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 21ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 17ms
|
||||
|
||||
|
|
|
|||
|
|
@ -4,3 +4,6 @@ generate_cxx_metadata
|
|||
[gap of 18ms]
|
||||
generate_cxx_metadata completed in 38ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 16ms
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,6 @@
|
|||
# C/C++ build system timings
|
||||
generate_cxx_metadata 19ms
|
||||
|
||||
# C/C++ build system timings
|
||||
generate_cxx_metadata 21ms
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -2091529352
|
||||
"memoizedHashCode": -1438516690
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 305896416
|
||||
"memoizedHashCode": 958909078
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -39,6 +39,6 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1264613355
|
||||
"memoizedHashCode": -611600693
|
||||
}
|
||||
]
|
||||
|
|
@ -11,6 +11,6 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1127879665
|
||||
"memoizedHashCode": -735102328
|
||||
}
|
||||
]
|
||||
|
|
@ -14,3 +14,13 @@ create_cxx_tasks
|
|||
[gap of 71ms]
|
||||
create_cxx_tasks completed in 203ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
[gap of 41ms]
|
||||
create-module-model 11ms
|
||||
[gap of 31ms]
|
||||
create-initial-cxx-model completed in 83ms
|
||||
[gap of 27ms]
|
||||
create_cxx_tasks completed in 111ms
|
||||
|
||||
|
|
|
|||
|
|
@ -10,3 +10,14 @@ create_cxx_tasks
|
|||
[gap of 10ms]
|
||||
create_cxx_tasks completed in 118ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 11ms
|
||||
[gap of 41ms]
|
||||
create-module-model 11ms
|
||||
[gap of 38ms]
|
||||
create-initial-cxx-model completed in 101ms
|
||||
[gap of 10ms]
|
||||
create_cxx_tasks completed in 111ms
|
||||
|
||||
|
|
|
|||
|
|
@ -15,3 +15,13 @@ create_cxx_tasks
|
|||
[gap of 12ms]
|
||||
create_cxx_tasks completed in 150ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 11ms
|
||||
[gap of 44ms]
|
||||
create-module-model 11ms
|
||||
[gap of 35ms]
|
||||
create-initial-cxx-model completed in 101ms
|
||||
create_cxx_tasks completed in 110ms
|
||||
|
||||
|
|
|
|||
|
|
@ -15,3 +15,13 @@ create_cxx_tasks
|
|||
[gap of 13ms]
|
||||
create_cxx_tasks completed in 149ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 12ms
|
||||
[gap of 38ms]
|
||||
create-module-model 10ms
|
||||
[gap of 34ms]
|
||||
create-initial-cxx-model completed in 94ms
|
||||
create_cxx_tasks completed in 101ms
|
||||
|
||||
|
|
|
|||
|
|
@ -19,3 +19,22 @@ create_cxx_tasks
|
|||
[gap of 15ms]
|
||||
create_cxx_tasks completed in 163ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 74ms]
|
||||
create-initial-cxx-model completed in 84ms
|
||||
[gap of 10ms]
|
||||
create_cxx_tasks completed in 94ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model 63ms
|
||||
create_cxx_tasks completed in 69ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model 54ms
|
||||
create_cxx_tasks completed in 61ms
|
||||
|
||||
|
|
|
|||
|
|
@ -778,3 +778,275 @@ create_cxx_tasks
|
|||
[gap of 48ms]
|
||||
create_cxx_tasks completed in 178ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 14ms
|
||||
[gap of 16ms]
|
||||
create-ARMEABI_V7A-model 14ms
|
||||
create-ARM64_V8A-model 10ms
|
||||
create-X86-model 10ms
|
||||
[gap of 10ms]
|
||||
create-module-model 13ms
|
||||
[gap of 41ms]
|
||||
create-initial-cxx-model completed in 130ms
|
||||
[gap of 55ms]
|
||||
create_cxx_tasks completed in 185ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 19ms
|
||||
[gap of 14ms]
|
||||
create-ARMEABI_V7A-model 11ms
|
||||
create-ARM64_V8A-model 12ms
|
||||
create-X86-model 10ms
|
||||
create-module-model 17ms
|
||||
create-ARMEABI_V7A-model 11ms
|
||||
create-ARM64_V8A-model 10ms
|
||||
create-X86-model 12ms
|
||||
create-X86_64-model 11ms
|
||||
create-initial-cxx-model completed in 148ms
|
||||
[gap of 50ms]
|
||||
create_cxx_tasks completed in 199ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 13ms
|
||||
[gap of 27ms]
|
||||
create-X86-model 13ms
|
||||
create-X86_64-model 10ms
|
||||
create-module-model 14ms
|
||||
create-ARMEABI_V7A-model 13ms
|
||||
[gap of 24ms]
|
||||
create-initial-cxx-model completed in 125ms
|
||||
[gap of 45ms]
|
||||
create_cxx_tasks completed in 170ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 36ms]
|
||||
create-module-model 10ms
|
||||
[gap of 29ms]
|
||||
create-initial-cxx-model completed in 85ms
|
||||
[gap of 33ms]
|
||||
create_cxx_tasks completed in 119ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 13ms
|
||||
[gap of 17ms]
|
||||
create-ARMEABI_V7A-model 11ms
|
||||
create-ARM64_V8A-model 11ms
|
||||
create-X86-model 11ms
|
||||
create-X86_64-model 11ms
|
||||
create-module-model 15ms
|
||||
[gap of 26ms]
|
||||
create-X86-model 10ms
|
||||
create-X86_64-model 10ms
|
||||
create-initial-cxx-model completed in 142ms
|
||||
[gap of 50ms]
|
||||
create_cxx_tasks completed in 193ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 13ms
|
||||
[gap of 31ms]
|
||||
create-X86_64-model 10ms
|
||||
create-module-model 14ms
|
||||
create-variant-model 12ms
|
||||
create-ARMEABI_V7A-model 19ms
|
||||
create-ARM64_V8A-model 12ms
|
||||
create-X86-model 17ms
|
||||
create-X86_64-model 14ms
|
||||
create-initial-cxx-model completed in 152ms
|
||||
[gap of 14ms]
|
||||
create_cxx_tasks completed in 166ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 59ms]
|
||||
create-initial-cxx-model completed in 69ms
|
||||
create_cxx_tasks completed in 75ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 33ms]
|
||||
create-module-model 12ms
|
||||
create-ARMEABI_V7A-model 15ms
|
||||
create-ARM64_V8A-model 10ms
|
||||
create-X86_64-model 11ms
|
||||
create-initial-cxx-model completed in 106ms
|
||||
[gap of 10ms]
|
||||
create_cxx_tasks completed in 116ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model 78ms
|
||||
create_cxx_tasks completed in 87ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 13ms
|
||||
[gap of 39ms]
|
||||
create-X86_64-model 10ms
|
||||
create-module-model 14ms
|
||||
[gap of 43ms]
|
||||
create-initial-cxx-model completed in 121ms
|
||||
[gap of 48ms]
|
||||
create_cxx_tasks completed in 169ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 20ms
|
||||
[gap of 18ms]
|
||||
create-ARMEABI_V7A-model 14ms
|
||||
create-ARM64_V8A-model 12ms
|
||||
create-X86-model 13ms
|
||||
create-X86_64-model 11ms
|
||||
create-module-model
|
||||
[gap of 15ms]
|
||||
create-cmake-model 17ms
|
||||
create-module-model completed in 37ms
|
||||
create-variant-model 14ms
|
||||
create-ARMEABI_V7A-model 12ms
|
||||
create-ARM64_V8A-model 11ms
|
||||
create-X86-model 20ms
|
||||
create-X86_64-model 13ms
|
||||
create-initial-cxx-model completed in 204ms
|
||||
[gap of 97ms]
|
||||
create_cxx_tasks completed in 301ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 14ms
|
||||
[gap of 22ms]
|
||||
create-ARM64_V8A-model 10ms
|
||||
[gap of 19ms]
|
||||
create-module-model 13ms
|
||||
create-variant-model 10ms
|
||||
[gap of 18ms]
|
||||
create-X86-model 14ms
|
||||
[gap of 10ms]
|
||||
create-initial-cxx-model completed in 131ms
|
||||
[gap of 16ms]
|
||||
create_cxx_tasks completed in 147ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 46ms]
|
||||
create-module-model 14ms
|
||||
[gap of 28ms]
|
||||
create-X86_64-model 10ms
|
||||
create-initial-cxx-model completed in 109ms
|
||||
[gap of 38ms]
|
||||
create_cxx_tasks completed in 147ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
[gap of 38ms]
|
||||
create-module-model 11ms
|
||||
[gap of 36ms]
|
||||
create-initial-cxx-model completed in 85ms
|
||||
[gap of 34ms]
|
||||
create_cxx_tasks completed in 120ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 35ms]
|
||||
create-module-model 13ms
|
||||
create-ARMEABI_V7A-model 13ms
|
||||
[gap of 18ms]
|
||||
create-X86_64-model 12ms
|
||||
create-initial-cxx-model completed in 111ms
|
||||
[gap of 44ms]
|
||||
create_cxx_tasks completed in 156ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 15ms
|
||||
[gap of 46ms]
|
||||
create-module-model 10ms
|
||||
[gap of 39ms]
|
||||
create-initial-cxx-model completed in 110ms
|
||||
[gap of 42ms]
|
||||
create_cxx_tasks completed in 153ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 41ms]
|
||||
create-module-model 11ms
|
||||
create-ARMEABI_V7A-model 11ms
|
||||
[gap of 20ms]
|
||||
create-initial-cxx-model completed in 100ms
|
||||
[gap of 34ms]
|
||||
create_cxx_tasks completed in 134ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 11ms
|
||||
[gap of 42ms]
|
||||
create-module-model 13ms
|
||||
[gap of 40ms]
|
||||
create-initial-cxx-model completed in 106ms
|
||||
[gap of 37ms]
|
||||
create_cxx_tasks completed in 143ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 75ms]
|
||||
create-initial-cxx-model completed in 85ms
|
||||
[gap of 31ms]
|
||||
create_cxx_tasks completed in 117ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 17ms
|
||||
[gap of 28ms]
|
||||
create-X86-model 10ms
|
||||
create-X86_64-model 10ms
|
||||
create-module-model 18ms
|
||||
[gap of 33ms]
|
||||
create-X86_64-model 10ms
|
||||
create-initial-cxx-model completed in 128ms
|
||||
[gap of 46ms]
|
||||
create_cxx_tasks completed in 175ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 14ms
|
||||
[gap of 54ms]
|
||||
create-module-model 14ms
|
||||
create-variant-model 10ms
|
||||
[gap of 10ms]
|
||||
create-ARM64_V8A-model 10ms
|
||||
create-X86-model 10ms
|
||||
create-initial-cxx-model completed in 135ms
|
||||
[gap of 60ms]
|
||||
create_cxx_tasks completed in 196ms
|
||||
|
||||
|
|
|
|||
|
|
@ -16,3 +16,15 @@ create_cxx_tasks
|
|||
[gap of 12ms]
|
||||
create_cxx_tasks completed in 173ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 11ms
|
||||
[gap of 19ms]
|
||||
create-X86-model 19ms
|
||||
create-module-model 11ms
|
||||
[gap of 31ms]
|
||||
create-initial-cxx-model completed in 100ms
|
||||
[gap of 16ms]
|
||||
create_cxx_tasks completed in 116ms
|
||||
|
||||
|
|
|
|||
|
|
@ -8,3 +8,11 @@ create_cxx_tasks
|
|||
[gap of 12ms]
|
||||
create_cxx_tasks completed in 93ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model
|
||||
create-module-model 10ms
|
||||
[gap of 73ms]
|
||||
create-initial-cxx-model completed in 83ms
|
||||
create_cxx_tasks completed in 90ms
|
||||
|
||||
|
|
|
|||
|
|
@ -10,3 +10,8 @@ create_cxx_tasks
|
|||
[gap of 11ms]
|
||||
create_cxx_tasks completed in 116ms
|
||||
|
||||
# C/C++ build system timings
|
||||
create_cxx_tasks
|
||||
create-initial-cxx-model 66ms
|
||||
create_cxx_tasks completed in 74ms
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1969914283
|
||||
"memoizedHashCode": 106932290
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -25,7 +25,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1532864910
|
||||
"memoizedHashCode": 899120393
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -39,7 +39,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1992608955
|
||||
"memoizedHashCode": 439376348
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -53,7 +53,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1034410353
|
||||
"memoizedHashCode": -828571640
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -67,7 +67,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1603122384
|
||||
"memoizedHashCode": -259859609
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -81,7 +81,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1968032642
|
||||
"memoizedHashCode": 105050649
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -95,7 +95,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -2019793420
|
||||
"memoizedHashCode": 412191883
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -109,7 +109,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1717026156
|
||||
"memoizedHashCode": -145955837
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -123,7 +123,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1909138387
|
||||
"memoizedHashCode": 522846916
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -137,7 +137,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": -1204677194
|
||||
"memoizedHashCode": 1227308109
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -151,7 +151,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 658136876
|
||||
"memoizedHashCode": -1204845117
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -165,7 +165,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 1226848907
|
||||
"memoizedHashCode": -636133086
|
||||
},
|
||||
{
|
||||
"level_": 0,
|
||||
|
|
@ -179,7 +179,7 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 2132598970
|
||||
"memoizedHashCode": 269616977
|
||||
},
|
||||
{
|
||||
"level_": 2,
|
||||
|
|
@ -193,6 +193,6 @@
|
|||
"fieldsDescending": {}
|
||||
},
|
||||
"memoizedSize": -1,
|
||||
"memoizedHashCode": 289047118
|
||||
"memoizedHashCode": -1573934875
|
||||
}
|
||||
]
|
||||
|
|
@ -234,4 +234,8 @@ dependencies {
|
|||
//implementation 'com.quickbirdstudios:opencv-contrib:3.4.5'
|
||||
implementation project(path: ':android-sdk-v5-uxsdk')
|
||||
|
||||
//TTS
|
||||
|
||||
implementation files('libs/AIKit.aar')
|
||||
|
||||
}
|
||||
|
|
@ -90,8 +90,8 @@ open class ConnectionActivity : BaseActivity() {
|
|||
}
|
||||
if (TextUtils.isEmpty(PreferenceUtils.getInstance().mqttServerUri)){
|
||||
PreferenceUtils.getInstance().mqttServerUri =
|
||||
// "tcp://192.168.20.90:2883"
|
||||
"tcp://broker.emqx.io"
|
||||
"tcp://192.168.20.90:2883"
|
||||
//"tcp://broker.emqx.io"
|
||||
}
|
||||
|
||||
if (TextUtils.isEmpty(PreferenceUtils.getInstance().mqttUserName)){
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
package com.aros.apron.activity
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.graphics.Color
|
||||
import android.graphics.drawable.ColorDrawable
|
||||
|
|
@ -6,16 +7,17 @@ import android.os.Build
|
|||
import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.util.Log
|
||||
import android.view.View
|
||||
import android.view.Window
|
||||
import android.view.WindowManager
|
||||
import android.widget.Button
|
||||
import android.widget.TextView
|
||||
import android.widget.Toast
|
||||
import androidx.annotation.RequiresApi
|
||||
import androidx.constraintlayout.widget.ConstraintLayout
|
||||
import androidx.core.view.GravityCompat
|
||||
import androidx.drawerlayout.widget.DrawerLayout
|
||||
import com.aros.apron.BuildConfig
|
||||
import com.aros.apron.R
|
||||
import com.aros.apron.base.BaseActivity
|
||||
import com.aros.apron.callback.MqttCallBack
|
||||
|
|
@ -36,6 +38,7 @@ import com.aros.apron.manager.MediaManager
|
|||
import com.aros.apron.manager.MissionV3Manager
|
||||
import com.aros.apron.manager.OSDManager
|
||||
import com.aros.apron.manager.PayloadWidgetManager
|
||||
import com.aros.apron.manager.SpeakerManager
|
||||
import com.aros.apron.manager.StickManager
|
||||
import com.aros.apron.manager.StreamManager
|
||||
import com.aros.apron.manager.WirelessLinkManager
|
||||
|
|
@ -45,8 +48,14 @@ import com.aros.apron.tools.DroneHelper
|
|||
import com.aros.apron.tools.LogUtil
|
||||
import com.aros.apron.tools.MqttManager
|
||||
import com.aros.apron.tools.PreferenceUtils
|
||||
import com.aros.apron.tools.Utils
|
||||
import com.dji.wpmzsdk.manager.WPMZManager
|
||||
import com.google.gson.Gson
|
||||
import com.iflytek.aikit.core.AiHelper
|
||||
import com.iflytek.aikit.core.BaseLibrary
|
||||
import com.iflytek.aikit.core.CoreListener
|
||||
import com.iflytek.aikit.core.ErrType
|
||||
import com.iflytek.aikit.core.LogLvl
|
||||
import dji.sdk.keyvalue.key.CameraKey
|
||||
import dji.sdk.keyvalue.key.DJIKey
|
||||
import dji.sdk.keyvalue.key.FlightControllerKey
|
||||
|
|
@ -57,9 +66,11 @@ import dji.sdk.keyvalue.value.common.ComponentIndexType
|
|||
import dji.sdk.keyvalue.value.common.EmptyMsg
|
||||
import dji.sdk.keyvalue.value.flightassistant.VisionAssistDirection
|
||||
import dji.v5.common.callback.CommonCallbacks
|
||||
import dji.v5.common.callback.CommonCallbacks.CompletionCallback
|
||||
import dji.v5.common.error.IDJIError
|
||||
import dji.v5.common.utils.GeoidManager
|
||||
import dji.v5.manager.KeyManager
|
||||
import dji.v5.manager.aircraft.virtualstick.VirtualStickManager
|
||||
import dji.v5.manager.datacenter.MediaDataCenter
|
||||
import dji.v5.manager.interfaces.ICameraStreamManager
|
||||
import dji.v5.manager.interfaces.ICameraStreamManager.AvailableCameraUpdatedListener
|
||||
|
|
@ -105,7 +116,6 @@ import io.reactivex.rxjava3.functions.Consumer
|
|||
import org.eclipse.paho.client.mqttv3.MqttException
|
||||
import org.greenrobot.eventbus.Subscribe
|
||||
import org.greenrobot.eventbus.ThreadMode
|
||||
import org.opencv.android.OpenCVLoader
|
||||
import org.opencv.objdetect.Dictionary
|
||||
import org.opencv.objdetect.Objdetect
|
||||
import java.util.concurrent.TimeUnit
|
||||
|
|
@ -143,6 +153,9 @@ open class MainActivity : BaseActivity() {
|
|||
private var gimbalAdjustDone: TextView? = null
|
||||
private var btn_test: Button? = null
|
||||
private var btn_test1: Button? = null
|
||||
private var btn_test2: Button? = null
|
||||
private var btn_test3: Button? = null
|
||||
|
||||
|
||||
private var gimbalFineTuneWidget: GimbalFineTuneWidget? = null
|
||||
private var lastDevicePosition = ComponentIndexType.UNKNOWN
|
||||
|
|
@ -175,13 +188,15 @@ open class MainActivity : BaseActivity() {
|
|||
}
|
||||
|
||||
|
||||
private var cameraManager: ICameraStreamManager = MediaDataCenter.getInstance().cameraStreamManager
|
||||
private var cameraManager: ICameraStreamManager =
|
||||
MediaDataCenter.getInstance().cameraStreamManager
|
||||
|
||||
private var startArucoType = 0 //1执行机库二维码识别 2执行备降点二维码识别
|
||||
private var dictionary: Dictionary? = null
|
||||
override fun useEventBus(): Boolean {
|
||||
return true
|
||||
}
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
dictionary = Objdetect.getPredefinedDictionary(Objdetect.DICT_6X6_250)
|
||||
|
|
@ -213,7 +228,8 @@ open class MainActivity : BaseActivity() {
|
|||
runOnUiThread { onCameraSourceUpdated(result.devicePosition, result.lensType) }
|
||||
})
|
||||
)
|
||||
compositeDisposable!!.add(ObservableInMemoryKeyedStore.getInstance()
|
||||
compositeDisposable!!.add(
|
||||
ObservableInMemoryKeyedStore.getInstance()
|
||||
.addObserver(UXKeys.create(GlobalPreferenceKeys.GIMBAL_ADJUST_CLICKED))
|
||||
.observeOn(ui())
|
||||
.subscribe { broadcastValues: BroadcastValues? ->
|
||||
|
|
@ -406,6 +422,7 @@ open class MainActivity : BaseActivity() {
|
|||
val devicePosition: ComponentIndexType,
|
||||
val lensType: CameraLensType
|
||||
)
|
||||
|
||||
override fun onBackPressed() {
|
||||
if (mDrawerLayout!!.isDrawerOpen(GravityCompat.END)) {
|
||||
mDrawerLayout!!.closeDrawers()
|
||||
|
|
@ -440,52 +457,107 @@ open class MainActivity : BaseActivity() {
|
|||
initDJIManager()
|
||||
initCameraStream()
|
||||
initView()
|
||||
initSDK()
|
||||
}
|
||||
|
||||
private fun initSDK() {
|
||||
AiHelper.getInst().setLogInfo(LogLvl.VERBOSE, 1, "/sdcard/iflytek/aikit/aeeLog.txt")
|
||||
//设定初始化参数
|
||||
val params = BaseLibrary.Params.builder()
|
||||
.appId("753fd711") //您的应用ID,可从控制台查看
|
||||
.apiKey("35099a7d31abf2259f5ee58cbf8b6791") //您的APIKEY,可从控制台查看
|
||||
.apiSecret("ZTdiMDIwYzEwNTA1NjllYjJlYjdmYWFi") //您的APISECRET,可从控制台查看
|
||||
.workDir(Utils.getSDCardPath() + "/DJIDemo/cache") //SDK的工作目录,需要确保有读写权限。一般用于存放离线能力资源,日志存放目录等使用。
|
||||
.build()
|
||||
//初始化SDK
|
||||
Thread {
|
||||
AiHelper.getInst().initEntry(this@MainActivity.applicationContext, params)
|
||||
}.start()
|
||||
AiHelper.getInst().registerListener(coreListener) // 注册SDK 初始化状态监听
|
||||
|
||||
}
|
||||
|
||||
//授权结果回调
|
||||
private val coreListener = CoreListener { type, code ->
|
||||
Log.i(TAG, "core listener code:$code")
|
||||
runOnUiThread {
|
||||
when (type) {
|
||||
ErrType.AUTH -> {
|
||||
if (code == 0) {
|
||||
LogUtil.log(TAG, "SDK授权成功")
|
||||
} else {
|
||||
LogUtil.log(TAG, "SDK授权失败,授权码为:$code")
|
||||
}
|
||||
}
|
||||
|
||||
ErrType.HTTP -> Toast.makeText(
|
||||
this@MainActivity, "SDK状态:HTTP认证结果$code",
|
||||
Toast.LENGTH_SHORT
|
||||
).show()
|
||||
|
||||
else -> Toast.makeText(
|
||||
this@MainActivity, "SDK状态:其他错误$code",
|
||||
Toast.LENGTH_SHORT
|
||||
).show()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun initView() {
|
||||
fpvParentView = findViewById( R.id.fpv_holder)
|
||||
mDrawerLayout = findViewById( R.id.root_view)
|
||||
topBarPanel = findViewById( R.id.panel_top_bar)
|
||||
fpvParentView = findViewById(R.id.fpv_holder)
|
||||
mDrawerLayout = findViewById(R.id.root_view)
|
||||
topBarPanel = findViewById(R.id.panel_top_bar)
|
||||
settingWidget = topBarPanel?.settingWidget
|
||||
primaryFpvWidget = findViewById( R.id.widget_primary_fpv)
|
||||
fpvInteractionWidget = findViewById( R.id.widget_fpv_interaction)
|
||||
secondaryFPVWidget = findViewById( R.id.widget_secondary_fpv)
|
||||
systemStatusListPanelWidget = findViewById( R.id.widget_panel_system_status_list)
|
||||
simulatorControlWidget = findViewById( R.id.widget_simulator_control)
|
||||
lensControlWidget = findViewById<LensControlWidget>( R.id.widget_lens_control)
|
||||
ndviCameraPanel = findViewById( R.id.panel_ndvi_camera)
|
||||
visualCameraPanel = findViewById( R.id.panel_visual_camera)
|
||||
autoExposureLockWidget = findViewById( R.id.widget_auto_exposure_lock)
|
||||
focusModeWidget = findViewById( R.id.widget_focus_mode)
|
||||
focusExposureSwitchWidget = findViewById( R.id.widget_focus_exposure_switch)
|
||||
pfvFlightDisplayWidget = findViewById( R.id.widget_fpv_flight_display_widget)
|
||||
focalZoomWidget = findViewById( R.id.widget_focal_zoom)
|
||||
cameraControlsWidget = findViewById( R.id.widget_camera_controls)
|
||||
primaryFpvWidget = findViewById(R.id.widget_primary_fpv)
|
||||
fpvInteractionWidget = findViewById(R.id.widget_fpv_interaction)
|
||||
secondaryFPVWidget = findViewById(R.id.widget_secondary_fpv)
|
||||
systemStatusListPanelWidget = findViewById(R.id.widget_panel_system_status_list)
|
||||
simulatorControlWidget = findViewById(R.id.widget_simulator_control)
|
||||
lensControlWidget = findViewById<LensControlWidget>(R.id.widget_lens_control)
|
||||
ndviCameraPanel = findViewById(R.id.panel_ndvi_camera)
|
||||
visualCameraPanel = findViewById(R.id.panel_visual_camera)
|
||||
autoExposureLockWidget = findViewById(R.id.widget_auto_exposure_lock)
|
||||
focusModeWidget = findViewById(R.id.widget_focus_mode)
|
||||
focusExposureSwitchWidget = findViewById(R.id.widget_focus_exposure_switch)
|
||||
pfvFlightDisplayWidget = findViewById(R.id.widget_fpv_flight_display_widget)
|
||||
focalZoomWidget = findViewById(R.id.widget_focal_zoom)
|
||||
cameraControlsWidget = findViewById(R.id.widget_camera_controls)
|
||||
horizontalSituationIndicatorWidget =
|
||||
findViewById(R.id.widget_horizontal_situation_indicator)
|
||||
// gimbalAdjustDone = findViewById<TextView>( R.id.fpv_gimbal_ok_btn)
|
||||
gimbalFineTuneWidget = findViewById( R.id.setting_menu_gimbal_fine_tune)
|
||||
btn_test = findViewById( R.id.btn_test)
|
||||
btn_test1 = findViewById( R.id.btn_test1)
|
||||
gimbalFineTuneWidget = findViewById(R.id.setting_menu_gimbal_fine_tune)
|
||||
btn_test = findViewById(R.id.btn_test)
|
||||
btn_test1 = findViewById(R.id.btn_test1)
|
||||
btn_test2 = findViewById(R.id.btn_test2)
|
||||
btn_test3 = findViewById(R.id.btn_test3)
|
||||
btn_test?.setOnClickListener {
|
||||
// MissionManager.getInstance().test()
|
||||
FlightManager.getInstance().startPropellerRotation(null)
|
||||
|
||||
|
||||
}
|
||||
btn_test1?.setOnClickListener {
|
||||
FlightManager.getInstance().stopPropellerRotation(null)
|
||||
|
||||
|
||||
}
|
||||
btn_test2?.setOnClickListener {
|
||||
|
||||
|
||||
}
|
||||
btn_test3?.setOnClickListener {
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
MediaDataCenter.getInstance().cameraStreamManager.setVisionAssistViewDirection(
|
||||
VisionAssistDirection.DOWN,object:CommonCallbacks.CompletionCallback{
|
||||
VisionAssistDirection.DOWN, object : CommonCallbacks.CompletionCallback {
|
||||
override fun onSuccess() {
|
||||
LogUtil.log(TAG,"开启成功")
|
||||
LogUtil.log(TAG, "开启成功")
|
||||
}
|
||||
|
||||
override fun onFailure(p0: IDJIError) {
|
||||
LogUtil.log(TAG,"开启失败"+p0)
|
||||
LogUtil.log(TAG, "开启失败" + p0)
|
||||
}
|
||||
})
|
||||
|
||||
|
|
@ -516,8 +588,6 @@ open class MainActivity : BaseActivity() {
|
|||
DJINetworkManager.getInstance().addNetworkStatusListener(networkStatusListener)
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
private fun isGimableAdjustClicked(broadcastValues: BroadcastValues) {
|
||||
|
|
@ -572,7 +642,8 @@ open class MainActivity : BaseActivity() {
|
|||
}
|
||||
|
||||
private val handler: Handler = Handler(Looper.getMainLooper())
|
||||
private var initTimes=0
|
||||
private var initTimes = 0
|
||||
|
||||
|
||||
private fun initDJIManager() {
|
||||
//如果没有云台修改这里
|
||||
|
|
@ -581,9 +652,11 @@ open class MainActivity : BaseActivity() {
|
|||
val isFlightControllerConnect =
|
||||
KeyManager.getInstance().getValue(DJIKey.create(FlightControllerKey.KeyConnection))
|
||||
val isCameraConnect =
|
||||
KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyConnection, ComponentIndexType.PORT_1))
|
||||
val isGimbal =KeyManager.getInstance().getValue(KeyTools.createKey(GimbalKey.KeyConnection, ComponentIndexType.PORT_1))
|
||||
LogUtil.log(TAG,isCameraConnect.toString())
|
||||
KeyManager.getInstance()
|
||||
.getValue(KeyTools.createKey(CameraKey.KeyConnection, ComponentIndexType.PORT_1))
|
||||
val isGimbal = KeyManager.getInstance()
|
||||
.getValue(KeyTools.createKey(GimbalKey.KeyConnection, ComponentIndexType.PORT_1))
|
||||
// LogUtil.log(TAG,isCameraConnect.toString())
|
||||
|
||||
//全装在初始化
|
||||
if ((isFlightControllerConnect == null || !isFlightControllerConnect)) {
|
||||
|
|
@ -594,7 +667,7 @@ open class MainActivity : BaseActivity() {
|
|||
initTimes++
|
||||
LogUtil.log(TAG, "初始化$initTimes")
|
||||
|
||||
LogUtil.log(TAG,"自定义推流方式:"+PreferenceUtils.getInstance().customStreamType)
|
||||
LogUtil.log(TAG, "自定义推流方式:" + PreferenceUtils.getInstance().customStreamType)
|
||||
Handler().postDelayed(Runnable {
|
||||
|
||||
|
||||
|
|
@ -615,30 +688,31 @@ open class MainActivity : BaseActivity() {
|
|||
LTEManager.getInstance().initLTEInfo()
|
||||
WirelessLinkManager.getInstance().initWirelessLink()
|
||||
CameraManager.getInstance().initCameraInfo()
|
||||
|
||||
//tts
|
||||
SpeakerManager.getInstance().initMegaphoneInfo()
|
||||
LEDsSettingsManager.getInstance().initLEDsInfo()
|
||||
|
||||
|
||||
|
||||
|
||||
if (PreferenceUtils.getInstance().customStreamType==1){
|
||||
if (PreferenceUtils.getInstance().customStreamType == 1) {
|
||||
StreamManager.getInstance()
|
||||
.startLiveWithRTSP()
|
||||
}else if (PreferenceUtils.getInstance().customStreamType==2){
|
||||
|
||||
} else if (PreferenceUtils.getInstance().customStreamType == 2) {
|
||||
StreamManager.getInstance()
|
||||
.startLiveWithCustom()
|
||||
}else {
|
||||
} else {
|
||||
StreamManager.getInstance()
|
||||
.startLiveWithCustom()
|
||||
}
|
||||
|
||||
}, 5000)
|
||||
LogUtil.log(TAG,"推流类型:"+PreferenceUtils.getInstance().customStreamType)
|
||||
LogUtil.log(TAG, "推流类型:" + PreferenceUtils.getInstance().customStreamType)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@SuppressLint("SuspiciousIndentation")
|
||||
private fun initCameraStream() {
|
||||
|
||||
|
|
@ -646,9 +720,9 @@ open class MainActivity : BaseActivity() {
|
|||
ComponentIndexType.FPV,
|
||||
ICameraStreamManager.FrameFormat.YUV420_888
|
||||
) { frameData, _, _, width, height, _ ->
|
||||
Movement.getInstance().isVtx=true
|
||||
Movement.getInstance().isVtx = true
|
||||
//检测到图传
|
||||
streamReceive=true
|
||||
streamReceive = true
|
||||
// if (shouldExecute) {
|
||||
if (startArucoType == 1) {
|
||||
ApronArucoDetect.getInstance()?.detectArucoTags(
|
||||
|
|
@ -718,7 +792,7 @@ open class MainActivity : BaseActivity() {
|
|||
ApronArucoDetect.getInstance().setDetectedBigMarkers()
|
||||
DroneHelper.getInstance().setGimbalPitchDegree()
|
||||
//每次触发识别二维码时,为避免获取控制权失败,使多次获取控制权
|
||||
DroneHelper.getInstance().isVirtualStickEnable=false
|
||||
DroneHelper.getInstance().isVirtualStickEnable = false
|
||||
DroneHelper.getInstance().setVerticalModeToVelocity()
|
||||
}
|
||||
})
|
||||
|
|
@ -757,12 +831,19 @@ open class MainActivity : BaseActivity() {
|
|||
)
|
||||
DroneHelper.getInstance().setGimbalPitchDegree()
|
||||
//每次触发识别二维码时,为避免获取控制权失败,使多次获取控制权
|
||||
DroneHelper.getInstance().isVirtualStickEnable=false
|
||||
DroneHelper.getInstance().isVirtualStickEnable = false
|
||||
DroneHelper.getInstance().setVerticalModeToVelocity()
|
||||
}
|
||||
})
|
||||
|
||||
FLAG_DOWN_LAND ->
|
||||
FLAG_DOWN_LAND -> {
|
||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(false)
|
||||
|
||||
VirtualStickManager.getInstance().disableVirtualStick(object : CompletionCallback {
|
||||
override fun onSuccess() {
|
||||
LogUtil.log(TAG, "控制取消成功")
|
||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(false)
|
||||
|
||||
KeyManager.getInstance().performAction<EmptyMsg>(
|
||||
KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding),
|
||||
object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> {
|
||||
|
|
@ -770,11 +851,28 @@ open class MainActivity : BaseActivity() {
|
|||
startArucoType = 0
|
||||
LogUtil.log(TAG, "自动降落调用成功")
|
||||
}
|
||||
|
||||
override fun onFailure(error: IDJIError) {
|
||||
LogUtil.log(TAG, "自动降落调用失败${error.description()}")
|
||||
}
|
||||
})
|
||||
}
|
||||
override fun onFailure(error: IDJIError) {
|
||||
LogUtil.log(TAG, "拖动控制权取消成功")
|
||||
KeyManager.getInstance().performAction<EmptyMsg>(
|
||||
KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding),
|
||||
object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> {
|
||||
override fun onSuccess(emptyMsg: EmptyMsg?) {
|
||||
startArucoType = 0
|
||||
LogUtil.log(TAG, "自动降落调用成功")
|
||||
}
|
||||
override fun onFailure(error: IDJIError) {
|
||||
LogUtil.log(TAG, "自动降落调用失败${error.description()}")
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
FLAG_STOP_ARUCO ->
|
||||
startArucoType = 0
|
||||
|
|
@ -784,9 +882,6 @@ open class MainActivity : BaseActivity() {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
private fun setViewVisibilityWithCleanMode() {
|
||||
if (PreferenceUtils.getInstance().isCleanMode) {
|
||||
fpvInteractionWidget?.visibility = View.GONE
|
||||
|
|
|
|||
|
|
@ -291,7 +291,7 @@ public abstract class BaseManager {
|
|||
output.setProgress(progress);
|
||||
|
||||
FlightTaskProgress.Data data = new FlightTaskProgress.Data();
|
||||
data.setResult(0);
|
||||
data.setResult(Movement.getInstance().getResult());
|
||||
data.setOutput(output);
|
||||
|
||||
FlightTaskProgress flightTaskProgress = new FlightTaskProgress();
|
||||
|
|
@ -321,7 +321,7 @@ public abstract class BaseManager {
|
|||
output.setProgress(progress);
|
||||
|
||||
FlightTaskProgress.Data data = new FlightTaskProgress.Data();
|
||||
data.setResult(0);
|
||||
data.setResult(Movement.getInstance().getResult());
|
||||
data.setOutput(output);
|
||||
|
||||
FlightTaskProgress flightTaskProgress = new FlightTaskProgress();
|
||||
|
|
@ -445,48 +445,47 @@ public abstract class BaseManager {
|
|||
LogUtil.log(TAG, "发送sdr异常:" + e.toString());
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 上报一键起飞任务进度
|
||||
*/
|
||||
public void sendTakeoffToPointProgress2Server() {
|
||||
try {
|
||||
if (MqttManager.getInstance().mqttAndroidClient.isConnected()) {
|
||||
|
||||
// 构建 data 数据
|
||||
TakeoffToPointProgress.Data data = new TakeoffToPointProgress.Data();
|
||||
data.setFlightId(PreferenceUtils.getInstance().getFlightId());
|
||||
data.setTrackId(PreferenceUtils.getInstance().getFlightId());
|
||||
data.setStatus(Movement.getInstance().getTakeoff_status());
|
||||
data.setResult(Movement.getInstance().getTakeoff_result());
|
||||
data.setWayPointIndex(Movement.getInstance().getCurrentWaypointIndex());
|
||||
data.setRemainingDistance(Movement.getInstance().getTakeoff_remaining_distance());
|
||||
data.setRemainingTime(Movement.getInstance().getTakeoff_remaining_time());
|
||||
data.setPlannedPathPoints(Movement.getInstance().getTakeoff_planned_path_points());
|
||||
|
||||
// 构建事件对象
|
||||
TakeoffToPointProgress progress = new TakeoffToPointProgress();
|
||||
progress.setBid(UUID.randomUUID().toString());
|
||||
progress.setTid(UUID.randomUUID().toString());
|
||||
progress.setTimestamp(System.currentTimeMillis());
|
||||
progress.setMethod("takeoff_to_point_progress");
|
||||
progress.setNeedReply(1);
|
||||
progress.setData(data);
|
||||
|
||||
// 发送
|
||||
MqttMessage mqttMessage = new MqttMessage(new Gson().toJson(progress).getBytes("UTF-8"));
|
||||
mqttMessage.setQos(0);
|
||||
MqttManager.getInstance().mqttAndroidClient.publish(AMSConfig.UP_UAV_EVENT, mqttMessage);
|
||||
|
||||
LogUtil.log(TAG, "发送一键起飞进度事件:" + new Gson().toJson(progress));
|
||||
|
||||
} else {
|
||||
LogUtil.log(TAG, "发送一键起飞进度event失败:mqtt 未连接");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
LogUtil.log(TAG, "发送一键起飞进度event异常:" + e.toString());
|
||||
}
|
||||
}
|
||||
// /**
|
||||
// * 上报一键起飞任务进度
|
||||
// */
|
||||
// public void sendTakeoffToPointProgress2Server() {
|
||||
// try {
|
||||
// if (MqttManager.getInstance().mqttAndroidClient.isConnected()) {
|
||||
// // 构建 data 数据
|
||||
// TakeoffToPointProgress.Data data = new TakeoffToPointProgress.Data();
|
||||
// data.setFlightId(PreferenceUtils.getInstance().getFlightId());
|
||||
// data.setTrackId(PreferenceUtils.getInstance().getFlightId());
|
||||
// data.setStatus(Movement.getInstance().getTakeoff_status());
|
||||
// data.setResult(Movement.getInstance().getTakeoff_result());
|
||||
// data.setWayPointIndex(Movement.getInstance().getCurrentWaypointIndex());
|
||||
// data.setRemainingDistance(Movement.getInstance().getTakeoff_remaining_distance());
|
||||
// data.setRemainingTime(Movement.getInstance().getTakeoff_remaining_time());
|
||||
// data.setPlannedPathPoints(Movement.getInstance().getTakeoff_planned_path_points());
|
||||
//
|
||||
// // 构建事件对象
|
||||
// TakeoffToPointProgress progress = new TakeoffToPointProgress();
|
||||
// progress.setBid(UUID.randomUUID().toString());
|
||||
// progress.setTid(UUID.randomUUID().toString());
|
||||
// progress.setTimestamp(System.currentTimeMillis());
|
||||
// progress.setMethod("takeoff_to_point_progress");
|
||||
// progress.setNeedReply(1);
|
||||
// progress.setData(data);
|
||||
//
|
||||
// // 发送
|
||||
// MqttMessage mqttMessage = new MqttMessage(new Gson().toJson(progress).getBytes("UTF-8"));
|
||||
// mqttMessage.setQos(0);
|
||||
// MqttManager.getInstance().mqttAndroidClient.publish(AMSConfig.UP_UAV_EVENT, mqttMessage);
|
||||
//
|
||||
// LogUtil.log(TAG, "发送一键起飞进度事件:" + new Gson().toJson(progress));
|
||||
//
|
||||
// } else {
|
||||
// LogUtil.log(TAG, "发送一键起飞进度event失败:mqtt 未连接");
|
||||
// }
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// LogUtil.log(TAG, "发送一键起飞进度event异常:" + e.toString());
|
||||
// }
|
||||
// }
|
||||
|
||||
/**
|
||||
* 上报拍照进度(camera_photo_take_progress)
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@ public class MVirtualStickStateListener extends BaseManager implements dji.v5.ma
|
|||
if (stickState!=null){
|
||||
LogUtil.log(TAG,"控制权:"+stickState.isVirtualStickEnable()+"-高级模式:"+stickState.isVirtualStickAdvancedModeEnabled());
|
||||
Movement.getInstance().setIsVirtualStickEnable(stickState.isVirtualStickEnable()?1:0);
|
||||
|
||||
if (!stickState.isVirtualStickEnable()){
|
||||
Movement.getInstance().setVirtualStickEnableReason(0);
|
||||
}
|
||||
|
|
@ -25,6 +26,9 @@ public class MVirtualStickStateListener extends BaseManager implements dji.v5.ma
|
|||
|
||||
@Override
|
||||
public void onChangeReasonUpdate(@NonNull FlightControlAuthorityChangeReason reason) {
|
||||
if(reason.name().equals(FlightControlAuthorityChangeReason.BATTERY_LOW_GO_HOME)){
|
||||
Movement.getInstance().setResult(321773);
|
||||
}
|
||||
LogUtil.log(TAG,"控制权变更原因:"+reason.name());
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,12 +12,15 @@ import com.aros.apron.constant.Constant;
|
|||
import com.aros.apron.entity.ApronExecutionStatus;
|
||||
import com.aros.apron.entity.MessageDown;
|
||||
import com.aros.apron.entity.Movement;
|
||||
import com.aros.apron.entity.SpeakerAudioPlayProgress;
|
||||
import com.aros.apron.manager.CameraManager;
|
||||
import com.aros.apron.manager.FlightManager;
|
||||
import com.aros.apron.manager.FlyToPointManager;
|
||||
import com.aros.apron.manager.GimbalManager;
|
||||
import com.aros.apron.manager.MissionV3Manager;
|
||||
import com.aros.apron.manager.OSDManager;
|
||||
import com.aros.apron.manager.PerceptionManager;
|
||||
import com.aros.apron.manager.SpeakerManager;
|
||||
import com.aros.apron.manager.StickManager;
|
||||
import com.aros.apron.manager.StreamManager;
|
||||
import com.aros.apron.manager.SystemManager;
|
||||
|
|
@ -26,6 +29,8 @@ import com.aros.apron.tools.LogUtil;
|
|||
import com.aros.apron.tools.MqttManager;
|
||||
import com.aros.apron.tools.PreferenceUtils;
|
||||
import com.aros.apron.tools.RestartAPPTool;
|
||||
import com.aros.apron.tools.SpeakerProgressReporter;
|
||||
import com.aros.apron.tools.TakeoffProgressScheduler;
|
||||
import com.google.gson.Gson;
|
||||
|
||||
import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
|
||||
|
|
@ -90,14 +95,10 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void messageArrived(String topic, MqttMessage mqttMessage) {
|
||||
String jsonString = null;
|
||||
//Log.e(TAG, "入口打印:" +mqttMessage.toString());
|
||||
Log.e(TAG, "入口打印:" +mqttMessage.toString());
|
||||
try {
|
||||
|
||||
jsonString = new String(mqttMessage.getPayload(), "UTF-8");
|
||||
|
|
@ -142,6 +143,9 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
|||
break;
|
||||
case Constant.FLIGHTTASK_EXECUTE:
|
||||
LogUtil.log(TAG, "收到:航线" + jsonString);
|
||||
//关闭避障
|
||||
PerceptionManager.getInstance().setPerceptionEnable(false);
|
||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
||||
//设置modecode
|
||||
Movement.getInstance().setMode_code(1);
|
||||
sendFlightTaskProgress2Server();
|
||||
|
|
@ -192,6 +196,7 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
|||
sendFlightTaskProgress2Server();
|
||||
//设置标志为指令飞行
|
||||
Movement.getInstance().setFlightmode(2);
|
||||
TakeoffProgressScheduler.getInstance().startReporting();
|
||||
|
||||
TakeOffToPointManager.getInstance().taskExecute(message);
|
||||
break;
|
||||
|
|
@ -322,6 +327,38 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
|||
LogUtil.log(TAG, "收到:框选变焦" + jsonString);
|
||||
CameraManager.getInstance().camera_frame_zoom(message);
|
||||
break;
|
||||
case Constant.SPEAKER_AUDIO_PLAY_START:
|
||||
LogUtil.log(TAG, "收到:喊话器-开始播放音频" + jsonString);
|
||||
SpeakerProgressReporter.getInstance().startAudioReport(2);
|
||||
SpeakerManager.getInstance().speakerAudioPlayStart(message);
|
||||
break;
|
||||
case Constant.SPEAKER_TTS_PLAY_START:
|
||||
LogUtil.log(TAG, "收到:喊话器-开始播放TTS文本" + jsonString);
|
||||
SpeakerProgressReporter.getInstance().startTTSReport(2);
|
||||
SpeakerManager.getInstance().speakerTTSPlayStart(message,0);
|
||||
break;
|
||||
case Constant.SPEAKER_REPLAY:
|
||||
LogUtil.log(TAG, "收到:喊话器-重新播放" + jsonString);
|
||||
SpeakerManager.getInstance().speakerReply(message);
|
||||
break;
|
||||
case Constant.SPEAKER_PLAY_STOP:
|
||||
LogUtil.log(TAG, "收到:喊话器-停止播放" + jsonString);
|
||||
|
||||
SpeakerManager.getInstance().speakerStop(message);
|
||||
break;
|
||||
case Constant.SPEAKER_PLAY_MODE_SET:
|
||||
LogUtil.log(TAG, "收到:喊话器-设置播放模式" + jsonString);
|
||||
SpeakerManager.getInstance().speakerPlayModeSet(message);
|
||||
break;
|
||||
case Constant.SPEAKER_PLAY_VOLUME_SET:
|
||||
LogUtil.log(TAG, "收到:喊话器-设置音量" + jsonString);
|
||||
SpeakerManager.getInstance().speakerPlayVolumeSet(message);
|
||||
break;
|
||||
case Constant.DRC_SPEAKER_TTS_SET:
|
||||
LogUtil.log(TAG, "收到:喊话器-TTS喊话设置" + jsonString);
|
||||
SpeakerManager.getInstance().speakerTTSPlayStart(message,1);
|
||||
break;
|
||||
|
||||
|
||||
// //获取控制权
|
||||
// case 60007:
|
||||
|
|
|
|||
|
|
@ -287,5 +287,41 @@ public class Constant {
|
|||
*/
|
||||
|
||||
|
||||
/**
|
||||
* 喊话器-开始播放音频
|
||||
*/
|
||||
public static final String SPEAKER_AUDIO_PLAY_START="speaker_audio_play_start";
|
||||
|
||||
/**
|
||||
* 喊话器-开始播放TTS文本
|
||||
*/
|
||||
public static final String SPEAKER_TTS_PLAY_START="speaker_tts_play_start";
|
||||
|
||||
/**
|
||||
* 喊话器-重新播放
|
||||
*/
|
||||
public static final String SPEAKER_REPLAY="speaker_replay";
|
||||
|
||||
/**
|
||||
* 喊话器-停止播放
|
||||
*/
|
||||
public static final String SPEAKER_PLAY_STOP="speaker_play_stop";
|
||||
|
||||
/**
|
||||
* 喊话器-设置播放模式
|
||||
*/
|
||||
public static final String SPEAKER_PLAY_MODE_SET="speaker_play_mode_set";
|
||||
|
||||
/**
|
||||
* 喊话器-设置音量
|
||||
*/
|
||||
public static final String SPEAKER_PLAY_VOLUME_SET="speaker_play_volume_set";
|
||||
|
||||
/**
|
||||
* 喊话器—TTS喊话设置
|
||||
*/
|
||||
public static final String DRC_SPEAKER_TTS_SET="drc_speaker_tts_set";
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,635 +0,0 @@
|
|||
package com.aros.apron.entity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class MessageDown {
|
||||
|
||||
private String tid;
|
||||
private String bid;
|
||||
private long timestamp;
|
||||
private String method;
|
||||
private Data data;
|
||||
|
||||
public String getTid() {
|
||||
return tid;
|
||||
}
|
||||
|
||||
public void setTid(String tid) {
|
||||
this.tid = tid;
|
||||
}
|
||||
|
||||
public String getBid() {
|
||||
return bid;
|
||||
}
|
||||
|
||||
public void setBid(String bid) {
|
||||
this.bid = bid;
|
||||
}
|
||||
|
||||
public long getTimestamp() {
|
||||
return timestamp;
|
||||
}
|
||||
|
||||
public void setTimestamp(long timestamp) {
|
||||
this.timestamp = timestamp;
|
||||
}
|
||||
|
||||
public String getMethod() {
|
||||
return method;
|
||||
}
|
||||
|
||||
public void setMethod(String method) {
|
||||
this.method = method;
|
||||
}
|
||||
|
||||
public Data getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public void setData(Data data) {
|
||||
this.data = data;
|
||||
}
|
||||
|
||||
public static class Data {
|
||||
private int result;
|
||||
private String url;
|
||||
private int video_quality;
|
||||
private int ideo_quality;
|
||||
private AlternateLandPoint alternate_land_point;
|
||||
private int rth_mode;
|
||||
private int task_type;
|
||||
private int wayline_precision_type;
|
||||
private String video_type;
|
||||
private long execute_time;
|
||||
private int exit_wayline_when_rc_lost;
|
||||
private File file;
|
||||
private String flight_id;
|
||||
private int flight_safety_advance_check;
|
||||
private int out_of_control_action;
|
||||
private boolean takeoffToPointTask;
|
||||
private BreakPoint break_point;
|
||||
private int camera_mode=0;//初始化为拍照
|
||||
private String h;
|
||||
private String seq;
|
||||
private String w;
|
||||
//摇杆和云台
|
||||
private String x;
|
||||
private String y;
|
||||
|
||||
private String camera_type;
|
||||
private String payload_index;
|
||||
|
||||
private float height;
|
||||
private double latitude;
|
||||
private boolean locked;
|
||||
private double longitude;
|
||||
private int zoom_factor;
|
||||
private boolean enable;
|
||||
private int exposure_mode;
|
||||
private int exposure_value;
|
||||
private int focus_mode;
|
||||
private int focus_value;
|
||||
|
||||
private double commander_flight_height;
|
||||
private int commander_mode_lost_action;
|
||||
private String max_speed;
|
||||
private int rc_lost_action;
|
||||
private int rth_altitude;
|
||||
private String security_takeoff_height;
|
||||
private double target_height;
|
||||
private double target_latitude;
|
||||
private double target_longitude;
|
||||
private String fly_to_id;
|
||||
private List<Points> points;
|
||||
private int reset_mode;
|
||||
|
||||
private double pitch_speed;
|
||||
|
||||
private double yaw_speed;
|
||||
|
||||
private float width;
|
||||
|
||||
|
||||
|
||||
public float getWidth() {
|
||||
return width;
|
||||
}
|
||||
|
||||
public void setWidth(float width) {
|
||||
this.width = width;
|
||||
}
|
||||
|
||||
public double getPitch_speed() {
|
||||
return pitch_speed;
|
||||
}
|
||||
|
||||
public void setPitch_speed(double pitch_speed) {
|
||||
this.pitch_speed = pitch_speed;
|
||||
}
|
||||
|
||||
public double getYaw_speed() {
|
||||
return yaw_speed;
|
||||
}
|
||||
|
||||
public void setYaw_speed(double yaw_speed) {
|
||||
this.yaw_speed = yaw_speed;
|
||||
}
|
||||
|
||||
public int getReset_mode() {
|
||||
return reset_mode;
|
||||
}
|
||||
|
||||
public void setReset_mode(int reset_mode) {
|
||||
this.reset_mode = reset_mode;
|
||||
}
|
||||
|
||||
public String getFly_to_id() {
|
||||
return fly_to_id;
|
||||
}
|
||||
|
||||
public void setFly_to_id(String fly_to_id) {
|
||||
this.fly_to_id = fly_to_id;
|
||||
}
|
||||
|
||||
public List<Points> getPoints() {
|
||||
return points;
|
||||
}
|
||||
|
||||
public void setPoints(List<Points> points) {
|
||||
this.points = points;
|
||||
}
|
||||
|
||||
public static class Points {
|
||||
private int height;
|
||||
private double latitude;
|
||||
private double longitude;
|
||||
|
||||
public int getHeight() {
|
||||
return height;
|
||||
}
|
||||
|
||||
public void setHeight(int height) {
|
||||
this.height = height;
|
||||
}
|
||||
|
||||
public double getLatitude() {
|
||||
return latitude;
|
||||
}
|
||||
|
||||
public void setLatitude(double latitude) {
|
||||
this.latitude = latitude;
|
||||
}
|
||||
|
||||
public double getLongitude() {
|
||||
return longitude;
|
||||
}
|
||||
|
||||
public void setLongitude(double longitude) {
|
||||
this.longitude = longitude;
|
||||
}
|
||||
}
|
||||
public double getCommander_flight_height() {
|
||||
return commander_flight_height;
|
||||
}
|
||||
|
||||
public void setCommander_flight_height(int commander_flight_height) {
|
||||
this.commander_flight_height = commander_flight_height;
|
||||
}
|
||||
|
||||
public int getCommander_mode_lost_action() {
|
||||
return commander_mode_lost_action;
|
||||
}
|
||||
|
||||
public void setCommander_mode_lost_action(int commander_mode_lost_action) {
|
||||
this.commander_mode_lost_action = commander_mode_lost_action;
|
||||
}
|
||||
|
||||
public String getMax_speed() {
|
||||
return max_speed;
|
||||
}
|
||||
|
||||
public void setMax_speed(String max_speed) {
|
||||
this.max_speed = max_speed;
|
||||
}
|
||||
|
||||
public int getRc_lost_action() {
|
||||
return rc_lost_action;
|
||||
}
|
||||
|
||||
public void setRc_lost_action(int rc_lost_action) {
|
||||
this.rc_lost_action = rc_lost_action;
|
||||
}
|
||||
|
||||
public String getSecurity_takeoff_height() {
|
||||
return security_takeoff_height;
|
||||
}
|
||||
|
||||
public void setSecurity_takeoff_height(String security_takeoff_height) {
|
||||
this.security_takeoff_height = security_takeoff_height;
|
||||
}
|
||||
|
||||
public double getTarget_height() {
|
||||
return target_height;
|
||||
}
|
||||
|
||||
public void setTarget_height(int target_height) {
|
||||
this.target_height = target_height;
|
||||
}
|
||||
|
||||
public double getTarget_latitude() {
|
||||
return target_latitude;
|
||||
}
|
||||
|
||||
public void setTarget_latitude(double target_latitude) {
|
||||
this.target_latitude = target_latitude;
|
||||
}
|
||||
|
||||
public double getTarget_longitude() {
|
||||
return target_longitude;
|
||||
}
|
||||
|
||||
public void setTarget_longitude(double target_longitude) {
|
||||
this.target_longitude = target_longitude;
|
||||
}
|
||||
|
||||
public int getFocus_value() {
|
||||
return focus_value;
|
||||
}
|
||||
|
||||
public void setFocus_value(int focus_value) {
|
||||
this.focus_value = focus_value;
|
||||
}
|
||||
|
||||
public int getFocus_mode() {
|
||||
return focus_mode;
|
||||
}
|
||||
|
||||
public void setFocus_mode(int focus_mode) {
|
||||
this.focus_mode = focus_mode;
|
||||
}
|
||||
|
||||
public int getExposure_value() {
|
||||
return exposure_value;
|
||||
}
|
||||
|
||||
public void setExposure_value(int exposure_value) {
|
||||
this.exposure_value = exposure_value;
|
||||
}
|
||||
|
||||
public int getExposure_mode() {
|
||||
return exposure_mode;
|
||||
}
|
||||
|
||||
public void setExposure_mode(int exposure_mode) {
|
||||
this.exposure_mode = exposure_mode;
|
||||
}
|
||||
|
||||
public boolean isEnable() {
|
||||
return enable;
|
||||
}
|
||||
|
||||
public void setEnable(boolean enable) {
|
||||
this.enable = enable;
|
||||
}
|
||||
|
||||
public int getZoom_factor() {
|
||||
return zoom_factor;
|
||||
}
|
||||
|
||||
public void setZoom_factor(int zoom_factor) {
|
||||
this.zoom_factor = zoom_factor;
|
||||
}
|
||||
|
||||
public float getHeight() {
|
||||
return height;
|
||||
}
|
||||
|
||||
public void setHeight(int height) {
|
||||
this.height = height;
|
||||
}
|
||||
|
||||
public double getLatitude() {
|
||||
return latitude;
|
||||
}
|
||||
|
||||
public void setLatitude(double latitude) {
|
||||
this.latitude = latitude;
|
||||
}
|
||||
|
||||
public double getLongitude() {
|
||||
return longitude;
|
||||
}
|
||||
|
||||
public void setLongitude(double longitude) {
|
||||
this.longitude = longitude;
|
||||
}
|
||||
|
||||
public String getCamera_type() {
|
||||
return camera_type;
|
||||
}
|
||||
|
||||
public void setCamera_type(String camera_type) {
|
||||
this.camera_type = camera_type;
|
||||
}
|
||||
|
||||
public boolean isLocked() {
|
||||
return locked;
|
||||
}
|
||||
|
||||
public void setLocked(boolean locked) {
|
||||
this.locked = locked;
|
||||
}
|
||||
|
||||
public String getPayload_index() {
|
||||
return payload_index;
|
||||
}
|
||||
|
||||
public void setPayload_index(String payload_index) {
|
||||
this.payload_index = payload_index;
|
||||
}
|
||||
|
||||
public String getH() {
|
||||
return h;
|
||||
}
|
||||
|
||||
public void setH(String h) {
|
||||
this.h = h;
|
||||
}
|
||||
|
||||
public String getSeq() {
|
||||
return seq;
|
||||
}
|
||||
|
||||
public void setSeq(String seq) {
|
||||
this.seq = seq;
|
||||
}
|
||||
|
||||
public String getW() {
|
||||
return w;
|
||||
}
|
||||
|
||||
public void setW(String w) {
|
||||
this.w = w;
|
||||
}
|
||||
|
||||
public String getX() {
|
||||
return x;
|
||||
}
|
||||
|
||||
public void setX(String x) {
|
||||
this.x = x;
|
||||
}
|
||||
|
||||
public String getY() {
|
||||
return y;
|
||||
}
|
||||
|
||||
public void setY(String y) {
|
||||
this.y = y;
|
||||
}
|
||||
|
||||
public int getCamera_mode() {
|
||||
return camera_mode;
|
||||
}
|
||||
|
||||
public void setCamera_mode(int camera_mode) {
|
||||
this.camera_mode = camera_mode;
|
||||
}
|
||||
|
||||
public BreakPoint getBreak_point() {
|
||||
return break_point;
|
||||
}
|
||||
|
||||
public void setBreak_point(BreakPoint break_point) {
|
||||
this.break_point = break_point;
|
||||
}
|
||||
public int getIdeo_quality() {
|
||||
return ideo_quality;
|
||||
}
|
||||
|
||||
public void setIdeo_quality(int ideo_quality) {
|
||||
this.ideo_quality = ideo_quality;
|
||||
}
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
|
||||
public int getVideo_quality() {
|
||||
return video_quality;
|
||||
}
|
||||
|
||||
public void setVideo_quality(int video_quality) {
|
||||
this.video_quality = video_quality;
|
||||
}
|
||||
|
||||
public int getResult() {
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setResult(int result) {
|
||||
this.result = result;
|
||||
}
|
||||
|
||||
public String getVideo_type() {
|
||||
return video_type;
|
||||
}
|
||||
|
||||
public void setVideo_type(String video_type) {
|
||||
this.video_type = video_type;
|
||||
}
|
||||
|
||||
|
||||
public static class File {
|
||||
private String fingerprint;
|
||||
private String url;
|
||||
|
||||
public String getFingerprint() {
|
||||
return fingerprint;
|
||||
}
|
||||
|
||||
public void setFingerprint(String fingerprint) {
|
||||
this.fingerprint = fingerprint;
|
||||
}
|
||||
|
||||
public String getUrl() {
|
||||
return url;
|
||||
}
|
||||
|
||||
public void setUrl(String url) {
|
||||
this.url = url;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static class BreakPoint {
|
||||
private int index;
|
||||
private double progress;
|
||||
private int state;
|
||||
private int wayline_id;
|
||||
|
||||
public int getIndex() {
|
||||
return index;
|
||||
}
|
||||
|
||||
public void setIndex(int index) {
|
||||
this.index = index;
|
||||
}
|
||||
|
||||
public double getProgress() {
|
||||
return progress;
|
||||
}
|
||||
|
||||
public void setProgress(double progress) {
|
||||
this.progress = progress;
|
||||
}
|
||||
|
||||
public int getState() {
|
||||
return state;
|
||||
}
|
||||
|
||||
public void setState(int state) {
|
||||
this.state = state;
|
||||
}
|
||||
|
||||
public int getWayline_id() {
|
||||
return wayline_id;
|
||||
}
|
||||
|
||||
public void setWayline_id(int wayline_id) {
|
||||
this.wayline_id = wayline_id;
|
||||
}
|
||||
}
|
||||
|
||||
public AlternateLandPoint getAlternate_land_point() {
|
||||
return alternate_land_point;
|
||||
}
|
||||
|
||||
public void setAlternate_land_point(AlternateLandPoint alternate_land_point) {
|
||||
this.alternate_land_point = alternate_land_point;
|
||||
}
|
||||
|
||||
public long getExecute_time() {
|
||||
return execute_time;
|
||||
}
|
||||
|
||||
public void setExecute_time(long execute_time) {
|
||||
this.execute_time = execute_time;
|
||||
}
|
||||
|
||||
public int getExit_wayline_when_rc_lost() {
|
||||
return exit_wayline_when_rc_lost;
|
||||
}
|
||||
|
||||
public void setExit_wayline_when_rc_lost(int exit_wayline_when_rc_lost) {
|
||||
this.exit_wayline_when_rc_lost = exit_wayline_when_rc_lost;
|
||||
}
|
||||
|
||||
public File getFile() {
|
||||
return file;
|
||||
}
|
||||
|
||||
public void setFile(File file) {
|
||||
this.file = file;
|
||||
}
|
||||
|
||||
public String getFlight_id() {
|
||||
return flight_id;
|
||||
}
|
||||
|
||||
public void setFlight_id(String flight_id) {
|
||||
this.flight_id = flight_id;
|
||||
}
|
||||
|
||||
public int getFlight_safety_advance_check() {
|
||||
return flight_safety_advance_check;
|
||||
}
|
||||
|
||||
public void setFlight_safety_advance_check(int flight_safety_advance_check) {
|
||||
this.flight_safety_advance_check = flight_safety_advance_check;
|
||||
}
|
||||
|
||||
public int getOut_of_control_action() {
|
||||
return out_of_control_action;
|
||||
}
|
||||
|
||||
public void setOut_of_control_action(int out_of_control_action) {
|
||||
this.out_of_control_action = out_of_control_action;
|
||||
}
|
||||
|
||||
public int getRth_altitude() {
|
||||
return rth_altitude;
|
||||
}
|
||||
|
||||
public void setRth_altitude(int rth_altitude) {
|
||||
this.rth_altitude = rth_altitude;
|
||||
}
|
||||
|
||||
public int getRth_mode() {
|
||||
return rth_mode;
|
||||
}
|
||||
|
||||
public void setRth_mode(int rth_mode) {
|
||||
this.rth_mode = rth_mode;
|
||||
}
|
||||
|
||||
public boolean isTakeoffToPointTask() {
|
||||
return takeoffToPointTask;
|
||||
}
|
||||
|
||||
public void setTakeoffToPointTask(boolean takeoffToPointTask) {
|
||||
this.takeoffToPointTask = takeoffToPointTask;
|
||||
}
|
||||
|
||||
public int getTask_type() {
|
||||
return task_type;
|
||||
}
|
||||
|
||||
public void setTask_type(int task_type) {
|
||||
this.task_type = task_type;
|
||||
}
|
||||
|
||||
public int getWayline_precision_type() {
|
||||
return wayline_precision_type;
|
||||
}
|
||||
|
||||
public void setWayline_precision_type(int wayline_precision_type) {
|
||||
this.wayline_precision_type = wayline_precision_type;
|
||||
}
|
||||
|
||||
public static class AlternateLandPoint {
|
||||
private double latitude;
|
||||
private double longitude;
|
||||
private double safe_land_height;
|
||||
|
||||
public double getLatitude() {
|
||||
return latitude;
|
||||
}
|
||||
|
||||
public void setLatitude(double latitude) {
|
||||
this.latitude = latitude;
|
||||
}
|
||||
|
||||
public double getLongitude() {
|
||||
return longitude;
|
||||
}
|
||||
|
||||
public void setLongitude(double longitude) {
|
||||
this.longitude = longitude;
|
||||
}
|
||||
|
||||
public double getSafe_land_height() {
|
||||
return safe_land_height;
|
||||
}
|
||||
|
||||
public void setSafe_land_height(double safe_land_height) {
|
||||
this.safe_land_height = safe_land_height;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
|
@ -276,6 +276,9 @@ public class Movement {
|
|||
private String sdr_freq_band;
|
||||
private String freq_band_4g;
|
||||
|
||||
//航线上报状态
|
||||
private int result=0;
|
||||
|
||||
|
||||
// ========== 一键起飞相关字段 ==========
|
||||
private boolean takeofftopointmission;
|
||||
|
|
@ -286,13 +289,93 @@ public class Movement {
|
|||
private double speed; //全局速度
|
||||
private List<TakeoffToPointProgress.PlannedPathPoint> takeoff_planned_path_points; // 规划轨迹点
|
||||
|
||||
private double takeofftargetlatitude;
|
||||
private double takeofftargetlongitude;
|
||||
private double takeofftargetheight;
|
||||
|
||||
|
||||
|
||||
|
||||
// ========== 上报拍照进度 ==========(全景)
|
||||
private String photo_status; // in_progress/ok/fail
|
||||
private int photo_current_step; // 3000/3002/3005
|
||||
private int photo_percent; // 0-100
|
||||
private int photo_result; // 0成功,非0错误
|
||||
// ========== 喊话器 ==========(全景)
|
||||
private String TTS_status;
|
||||
private int speakerpercent;
|
||||
private String step_key;
|
||||
private String md5;
|
||||
|
||||
|
||||
public int getSpeakerpercent() {
|
||||
return speakerpercent;
|
||||
}
|
||||
|
||||
public void setSpeakerpercent(int speakerpercent) {
|
||||
this.speakerpercent = speakerpercent;
|
||||
}
|
||||
|
||||
public int getResult() {
|
||||
return result;
|
||||
}
|
||||
|
||||
public void setResult(int result) {
|
||||
this.result = result;
|
||||
}
|
||||
|
||||
public double getTakeofftargetlatitude() {
|
||||
return takeofftargetlatitude;
|
||||
}
|
||||
|
||||
public void setTakeofftargetlatitude(double takeofftargetlatitude) {
|
||||
this.takeofftargetlatitude = takeofftargetlatitude;
|
||||
}
|
||||
|
||||
public double getTakeofftargetlongitude() {
|
||||
return takeofftargetlongitude;
|
||||
}
|
||||
|
||||
public void setTakeofftargetlongitude(double takeofftargetlongitude) {
|
||||
this.takeofftargetlongitude = takeofftargetlongitude;
|
||||
}
|
||||
|
||||
public double getTakeofftargetheight() {
|
||||
return takeofftargetheight;
|
||||
}
|
||||
|
||||
public void setTakeofftargetheight(double takeofftargetheight) {
|
||||
this.takeofftargetheight = takeofftargetheight;
|
||||
}
|
||||
|
||||
public String getMd5() {
|
||||
return md5;
|
||||
}
|
||||
|
||||
public void setMd5(String md5) {
|
||||
this.md5 = md5;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public String getTTS_status() {
|
||||
return TTS_status;
|
||||
}
|
||||
|
||||
public void setTTS_status(String TTS_status) {
|
||||
this.TTS_status = TTS_status;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public String getStep_key() {
|
||||
return step_key;
|
||||
}
|
||||
|
||||
public void setStep_key(String step_key) {
|
||||
this.step_key = step_key;
|
||||
}
|
||||
|
||||
|
||||
|
||||
public int getGPSSatelliteCount() {
|
||||
|
|
@ -411,7 +494,7 @@ public class Movement {
|
|||
}
|
||||
|
||||
//用来判断是什么起飞type
|
||||
private int flightmode=0; //0代表没有操作 1代表航线飞行 2代表指令飞行(一键和flyto)
|
||||
private int flightmode=0; //0代表没有操作 1代表航线飞行 2一键代表指令飞行 3flyto(一键和flyto)
|
||||
private boolean takeofftopoint;
|
||||
private boolean opendrc=false; //true 是开启 false 是关闭
|
||||
|
||||
|
|
|
|||
|
|
@ -134,15 +134,15 @@ public class TakeoffToPointProgress {
|
|||
}
|
||||
|
||||
public static class PlannedPathPoint {
|
||||
private Float height;
|
||||
private Double height;
|
||||
private Double latitude;
|
||||
private Double longitude;
|
||||
|
||||
public Float getHeight() {
|
||||
public Double getHeight() {
|
||||
return height;
|
||||
}
|
||||
|
||||
public void setHeight(Float height) {
|
||||
public void setHeight(Double height) {
|
||||
this.height = height;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -812,6 +812,7 @@ public class FlightManager extends BaseManager {
|
|||
sendCloseCabinDoorMsg = true;
|
||||
DockCloseManager.getInstance().sendDockCloseMsg2Server();
|
||||
PerceptionManager.getInstance().setPerceptionEnable(true);
|
||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -847,6 +848,7 @@ public class FlightManager extends BaseManager {
|
|||
// DroneHelper.getInstance().setCameraFocusMode();
|
||||
// isGimbalDownwards = true;
|
||||
PerceptionManager.getInstance().setPerceptionEnable(false);
|
||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
||||
// if (Movement.getInstance().getIsRecording() == 1) {
|
||||
// CameraManager.getInstance().stopRecordVideo(null);
|
||||
// }
|
||||
|
|
@ -880,19 +882,20 @@ public class FlightManager extends BaseManager {
|
|||
}
|
||||
|
||||
|
||||
private static final double FLYING_HEIGHT_THRESHOLD_MAX = 5.5;
|
||||
private static final double FLYING_HEIGHT_THRESHOLD_MAX = 6;
|
||||
private static final double FLYING_HEIGHT_THRESHOLD_MAX_ALTERNATE = 10;
|
||||
private static final double FLYING_HEIGHT_THRESHOLD_MIN = -2;
|
||||
private static final double FLYING_HEIGHT_THRESHOLD_MIN_ALTERNATE = 2.0;
|
||||
|
||||
private void startVisionLanding() {
|
||||
|
||||
boolean isDebugMode = PreferenceUtils.getInstance().getIsDebugMode();
|
||||
boolean triggerToAlternatePoint = PreferenceUtils.getInstance().getTriggerToAlternatePoint();
|
||||
boolean needTriggerApronArucoLand = PreferenceUtils.getInstance().getNeedTriggerApronArucoLand();
|
||||
boolean needTriggerAlterArucoLand = PreferenceUtils.getInstance().getNeedTriggerAlterArucoLand();
|
||||
double thresholdMax = triggerToAlternatePoint ? FLYING_HEIGHT_THRESHOLD_MAX_ALTERNATE : FLYING_HEIGHT_THRESHOLD_MAX;
|
||||
|
||||
if (isFlying && Movement.getInstance().getElevation() < thresholdMax && !isSendDetect) {
|
||||
if (isFlying && (Movement.getInstance().getElevation() < thresholdMax || Movement.getInstance().getUltrasonicHeight()<45)&& !isSendDetect) {
|
||||
double flyingHeight = Movement.getInstance().getElevation();
|
||||
double thresholdMin = triggerToAlternatePoint ? FLYING_HEIGHT_THRESHOLD_MIN_ALTERNATE : FLYING_HEIGHT_THRESHOLD_MIN;
|
||||
|
||||
|
|
|
|||
|
|
@ -270,6 +270,11 @@ public class GimbalManager extends BaseManager {
|
|||
locationCoordinate3D.setLongitude(message.getData().getLongitude());
|
||||
locationCoordinate3D.setAltitude(Double.parseDouble(message.getData().getHeight() + ""));
|
||||
lookAtInfo.setLocation(locationCoordinate3D);
|
||||
if(message.getData().isLocked()==true){
|
||||
KeyManager.getInstance().setValue(KeyTools.createKey(GimbalKey.KeyGimbalMode), GimbalMode.YAW_FOLLOW, new CommonCallbacks.CompletionCallback() {
|
||||
@Override
|
||||
public void onSuccess() {
|
||||
//设置云台跟随
|
||||
KeyManager.getInstance().performAction(KeyTools.createKey(FlightControllerKey.KeyLookAt), lookAtInfo, new CommonCallbacks.CompletionCallbackWithParam<EmptyMsg>() {
|
||||
@Override
|
||||
public void onSuccess(EmptyMsg emptyMsg) {
|
||||
|
|
@ -284,6 +289,29 @@ public class GimbalManager extends BaseManager {
|
|||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(@NonNull IDJIError idjiError) {
|
||||
//设置云台跟随失败
|
||||
}
|
||||
});
|
||||
}else{
|
||||
KeyManager.getInstance().performAction(KeyTools.createKey(FlightControllerKey.KeyLookAt), lookAtInfo, new CommonCallbacks.CompletionCallbackWithParam<EmptyMsg>() {
|
||||
@Override
|
||||
public void onSuccess(EmptyMsg emptyMsg) {
|
||||
LogUtil.log(TAG,"看向目标点成功");
|
||||
sendMsg2Server(message);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(@NonNull IDJIError error) {
|
||||
LogUtil.log(TAG,"看向目标点失败"+error);
|
||||
sendFailMsg2Server(message, "看向目标点失败:" + getIDJIErrorMsg(error));
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
} else {
|
||||
LogUtil.log(TAG, "云台未连接");
|
||||
}
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ import com.aros.apron.entity.Movement;
|
|||
import com.aros.apron.tools.LogUtil;
|
||||
import com.aros.apron.tools.PreferenceUtils;
|
||||
import com.aros.apron.tools.RestartAPPTool;
|
||||
import com.aros.apron.tools.TakeoffProgressScheduler;
|
||||
import com.dji.wpmzsdk.common.data.KMZInfo;
|
||||
import com.dji.wpmzsdk.manager.WPMZManager;
|
||||
import com.google.gson.Gson;
|
||||
|
|
@ -30,6 +31,7 @@ import java.io.IOException;
|
|||
import java.io.InputStream;
|
||||
import java.util.List;
|
||||
|
||||
import dji.sdk.keyvalue.key.CameraKey;
|
||||
import dji.sdk.keyvalue.key.FlightControllerKey;
|
||||
import dji.sdk.keyvalue.key.KeyTools;
|
||||
import dji.sdk.keyvalue.value.flightcontroller.RemoteControllerFlightMode;
|
||||
|
|
@ -103,6 +105,10 @@ public class MissionV3Manager extends BaseManager {
|
|||
sendFlightTaskProgress2Server();
|
||||
break;
|
||||
case READY:
|
||||
if(Movement.getInstance().getFlightmode()==2){
|
||||
Movement.getInstance().setTakeoff_status("task_ready");
|
||||
}
|
||||
|
||||
if (PreferenceUtils.getInstance().getMissionType()==2
|
||||
) {
|
||||
Movement.getInstance().setTask_status("paused");
|
||||
|
|
@ -145,6 +151,11 @@ public class MissionV3Manager extends BaseManager {
|
|||
break;
|
||||
case ENTER_WAYLINE:
|
||||
enterWayLineTime = System.currentTimeMillis();
|
||||
if(Movement.getInstance().getFlightmode()==2){
|
||||
Movement.getInstance().setTakeoff_status("wayline_progress");
|
||||
}
|
||||
|
||||
|
||||
if (PreferenceUtils.getInstance().getMissionType()==2
|
||||
) {
|
||||
Movement.getInstance().setTask_status("paused");
|
||||
|
|
@ -187,6 +198,11 @@ public class MissionV3Manager extends BaseManager {
|
|||
sendFlightTaskProgress2Server();
|
||||
break;
|
||||
case INTERRUPTED:
|
||||
|
||||
if(Movement.getInstance().getFlightmode()==2){
|
||||
Movement.getInstance().setTakeoff_status("wayline_cancel");
|
||||
}
|
||||
|
||||
Movement.getInstance().setVirtualStickQuitMission(false);
|
||||
sendEvent2Server("任务状态:航线任务执行中断", 1);
|
||||
Movement.getInstance().setTask_status("paused");
|
||||
|
|
@ -223,6 +239,17 @@ public class MissionV3Manager extends BaseManager {
|
|||
}else{
|
||||
|
||||
}
|
||||
if(Movement.getInstance().getFlightmode()==2){
|
||||
Movement.getInstance().setTakeoff_status("task_finish");
|
||||
Movement.getInstance().setTakeoff_status("wayline_ok");
|
||||
|
||||
new Handler(Looper.getMainLooper()).postDelayed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
TakeoffProgressScheduler.getInstance().stopReporting();
|
||||
}
|
||||
}, 1000); // 1000ms = 1秒
|
||||
}
|
||||
|
||||
finishWayLineTime = System.currentTimeMillis();
|
||||
mainHandler.postDelayed(new Runnable() {
|
||||
|
|
@ -348,6 +375,7 @@ public class MissionV3Manager extends BaseManager {
|
|||
}
|
||||
//2.关闭避障
|
||||
PerceptionManager.getInstance().setPerceptionEnable(false);
|
||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
||||
//3.清空sd卡
|
||||
CameraManager.getInstance().formatStorage(null);
|
||||
//4.返航或降落状态无法执行航线
|
||||
|
|
@ -565,6 +593,7 @@ public class MissionV3Manager extends BaseManager {
|
|||
public void onSuccess() {
|
||||
// "2": "起飞准备完毕",
|
||||
Movement.getInstance().setMode_code(2);
|
||||
LogUtil.log(TAG,"航线上传成功,准备执行任务");
|
||||
sendEvent2Server("航线上传成功,准备执行任务", 1);
|
||||
isPushKMZSuccess = true;
|
||||
mainHandler.postDelayed(new Runnable() {
|
||||
|
|
@ -578,6 +607,9 @@ public class MissionV3Manager extends BaseManager {
|
|||
Movement.getInstance().setMode_code(4);
|
||||
sendFlightTaskProgress2Server();
|
||||
Movement.getInstance().setTask_current_step(22);
|
||||
//关闭避障
|
||||
PerceptionManager.getInstance().setPerceptionEnable(false);
|
||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
||||
|
||||
startMission(message);
|
||||
pushKMZFileTimes = 0;
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ import dji.v5.manager.KeyManager;
|
|||
import dji.v5.manager.aircraft.perception.data.ObstacleAvoidanceType;
|
||||
import dji.v5.manager.aircraft.perception.data.PerceptionDirection;
|
||||
import dji.v5.manager.interfaces.IPerceptionManager;
|
||||
import dji.v5.manager.interfaces.IRadarManager;
|
||||
|
||||
public class PerceptionManager extends BaseManager {
|
||||
|
||||
|
|
@ -39,14 +40,18 @@ public class PerceptionManager extends BaseManager {
|
|||
private boolean closePerceptionSuccess;
|
||||
|
||||
public void setPerceptionEnable(boolean perceptionEnable) {
|
||||
|
||||
if (PreferenceUtils.getInstance().getCloseObsEnable() && perceptionEnable) {
|
||||
LogUtil.log(TAG, "全局避障关闭,不开启避障");
|
||||
return;
|
||||
}
|
||||
|
||||
Boolean isConnect = KeyManager.getInstance().getValue(createKey(FlightControllerKey.KeyConnection));
|
||||
if (isConnect != null && isConnect) {
|
||||
|
||||
IPerceptionManager perceptionManager = dji.v5.manager.aircraft.perception.PerceptionManager.getInstance();
|
||||
|
||||
|
||||
//关闭避障
|
||||
perceptionManager.setObstacleAvoidanceType(perceptionEnable ? ObstacleAvoidanceType.BRAKE : ObstacleAvoidanceType.CLOSE, new CommonCallbacks.CompletionCallback() {
|
||||
@Override
|
||||
public void onSuccess() {
|
||||
|
|
@ -71,6 +76,7 @@ public class PerceptionManager extends BaseManager {
|
|||
public void run() {
|
||||
closePerceptionTimes++;
|
||||
setPerceptionEnable(false);
|
||||
setObstacleAvoidanceHorizontalEnabled(false);
|
||||
}
|
||||
}, 2000);
|
||||
} else {
|
||||
|
|
@ -83,8 +89,9 @@ public class PerceptionManager extends BaseManager {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
//开启水平避障
|
||||
public void setObstacleAvoidanceHorizontalEnabled() {
|
||||
public void setObstacleAvoidanceHorizontalEnabled(Boolean perceptionEnable) {
|
||||
if (PreferenceUtils.getInstance().getCloseObsEnable()) {
|
||||
LogUtil.log(TAG, "全局避障关闭,不开启避障");
|
||||
return;
|
||||
|
|
@ -92,7 +99,7 @@ public class PerceptionManager extends BaseManager {
|
|||
Boolean isConnect = KeyManager.getInstance().getValue(createKey(FlightControllerKey.KeyConnection));
|
||||
if (isConnect != null && isConnect) {
|
||||
IPerceptionManager perceptionManager = dji.v5.manager.aircraft.perception.PerceptionManager.getInstance();
|
||||
perceptionManager.setObstacleAvoidanceEnabled(true, PerceptionDirection.HORIZONTAL, new CommonCallbacks.CompletionCallback() {
|
||||
perceptionManager.setObstacleAvoidanceEnabled(perceptionEnable ? true:false, PerceptionDirection.HORIZONTAL, new CommonCallbacks.CompletionCallback() {
|
||||
@Override
|
||||
public void onSuccess() {
|
||||
LogUtil.log(TAG, "开启水平避障");
|
||||
|
|
|
|||
|
|
@ -71,11 +71,11 @@ public class StickManager extends BaseManager {
|
|||
|
||||
public void disableVirtualStick1() {
|
||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(false);
|
||||
VirtualStickManager.getInstance().enableVirtualStick(new CommonCallbacks.CompletionCallback() {
|
||||
VirtualStickManager.getInstance().disableVirtualStick(new CommonCallbacks.CompletionCallback() {
|
||||
@Override
|
||||
public void onSuccess() {
|
||||
LogUtil.log(TAG, "控制取消成功");
|
||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(true);
|
||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(false);
|
||||
|
||||
}
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -150,11 +150,9 @@ sendMsg2Server(message);
|
|||
|
||||
|
||||
public void startLiveWithRTSP() {
|
||||
|
||||
Boolean isAircraftConnected = KeyManager.getInstance().getValue(DJIKey.create(ProductKey.KeyConnection));
|
||||
if (isAircraftConnected == null || !isAircraftConnected) {
|
||||
LogUtil.log(TAG, "飞行器未连接");
|
||||
|
||||
} else {
|
||||
if (PreferenceUtils.getInstance().getRtspUserName()!=null&&
|
||||
PreferenceUtils.getInstance().getRtspPort()!=null&&
|
||||
|
|
@ -164,11 +162,15 @@ sendMsg2Server(message);
|
|||
LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
||||
+"--"+PreferenceUtils.getInstance().getRtspPort()+"--"+PreferenceUtils.getInstance().getRtspPassWord());
|
||||
LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
||||
|
||||
LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
||||
.setRtspSettings(new RtspSettings.Builder().setPassWord(PreferenceUtils.getInstance().getRtspPassWord()).
|
||||
setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
||||
setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
||||
|
||||
|
||||
|
||||
|
||||
liveStreamManager.setLiveStreamSettings(streamSettings);
|
||||
CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
||||
// if (value != null && (value == CameraType.ZENMUSE_H20T ||
|
||||
|
|
|
|||
|
|
@ -101,7 +101,6 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 1.校验飞机状态
|
||||
*/
|
||||
|
|
@ -114,6 +113,7 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
}
|
||||
//2.关闭避障
|
||||
PerceptionManager.getInstance().setPerceptionEnable(false);
|
||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
||||
//3.清空sd卡
|
||||
CameraManager.getInstance().formatStorage(null);
|
||||
//4.返航或降落状态无法执行航线
|
||||
|
|
@ -230,6 +230,11 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
*/
|
||||
public void toGenerateKMZFile(MessageDown message) {
|
||||
Movement.getInstance().setTask_current_step(16);
|
||||
//目标点的经纬度
|
||||
Movement.getInstance().setTakeofftargetlatitude(message.getData().getTarget_latitude());
|
||||
Movement.getInstance().setTakeofftargetlongitude(message.getData().getTarget_longitude());
|
||||
Movement.getInstance().setTakeofftargetheight(message.getData().getTarget_height());
|
||||
|
||||
MissionDataBean data = new Gson().fromJson(new Gson().toJson(message.getData()), MissionDataBean.class);
|
||||
Boolean generateKmz=Generakmztools.getInstance().generateKmz(data);
|
||||
LogUtil.log(TAG,"生成的boole"+generateKmz);
|
||||
|
|
@ -273,7 +278,6 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
List<WaylineExecuteWaypoint> waypoints = waylines.get(0).getWaypoints();
|
||||
if (waypoints != null && waypoints.size() > 0) {
|
||||
//将航点列表保存在本地
|
||||
|
||||
Movement.getInstance().setSpeed(configParseInfo.getGlobalTransitionalSpeed());
|
||||
|
||||
CurrentWayline.getInstance().setWaypoints(waypoints);
|
||||
|
|
@ -299,8 +303,6 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
public void onProgressUpdate(Double progress) {
|
||||
sendEvent2Server("航线上传进度:" + progress, 1);
|
||||
Movement.getInstance().setTask_current_step(17);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -316,7 +318,6 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
/**
|
||||
* 7.开始任务
|
||||
*/
|
||||
|
||||
//自主起飞
|
||||
Movement.getInstance().setMode_code(4);
|
||||
sendFlightTaskProgress2Server();
|
||||
|
|
@ -348,7 +349,6 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
//待机
|
||||
Movement.getInstance().setMode_code(0);
|
||||
sendFlightTaskProgress2Server();
|
||||
|
||||
TaskFailManager.getInstance().sendTaskFailMsg2Server(-1);
|
||||
}
|
||||
} else {
|
||||
|
|
@ -388,6 +388,7 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
sendEvent2Server("任务开始执行", 1);
|
||||
Movement.getInstance().setTask_current_step(23);
|
||||
sendFlightTaskProgress2Server();
|
||||
Movement.getInstance().setTakeoff_result(0);
|
||||
}
|
||||
@Override
|
||||
public void onFailure(@NonNull IDJIError error) {
|
||||
|
|
@ -406,6 +407,8 @@ public class TakeOffToPointManager extends BaseManager {
|
|||
}, 2000);
|
||||
} else {
|
||||
if (!Movement.getInstance().isPlaneWing()) {
|
||||
Movement.getInstance().setTakeoff_status("wayline_failed");
|
||||
Movement.getInstance().setTakeoff_result(1);
|
||||
//待机
|
||||
Movement.getInstance().setMode_code(0);
|
||||
sendFlightTaskProgress2Server();
|
||||
|
|
|
|||
|
|
@ -6,6 +6,8 @@ import android.os.Handler;
|
|||
import android.os.Looper;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
|
||||
import com.aros.apron.constant.AMSConfig;
|
||||
import com.aros.apron.entity.ArucoMarker;
|
||||
import com.aros.apron.entity.ArucoMarkerDimensions;
|
||||
|
|
@ -39,6 +41,13 @@ import java.util.concurrent.Future;
|
|||
import java.util.concurrent.ScheduledExecutorService;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import dji.sdk.keyvalue.key.FlightControllerKey;
|
||||
import dji.sdk.keyvalue.key.KeyTools;
|
||||
import dji.sdk.keyvalue.value.common.EmptyMsg;
|
||||
import dji.v5.common.callback.CommonCallbacks;
|
||||
import dji.v5.common.error.IDJIError;
|
||||
import dji.v5.manager.KeyManager;
|
||||
|
||||
public class ApronArucoDetect {
|
||||
|
||||
//是否触发识别(如果丢失图传,此值为false)
|
||||
|
|
@ -68,10 +77,10 @@ public class ApronArucoDetect {
|
|||
|
||||
// 【关键修改1】M400下视镜头右后方补偿量(像素,正值向右补偿)
|
||||
// 如果还往左偏就调大,往右偏就调小,建议范围 30-80
|
||||
private static final double LENS_OFFSET_X = 15.0;
|
||||
private static final double LENS_OFFSET_Y = 20.0;
|
||||
private static double LENS_OFFSET_X = 0;
|
||||
private static double LENS_OFFSET_Y = 0;
|
||||
// 【关键修改2】放宽居中判定阈值(原40,补偿后改为60更合理)
|
||||
private static final int CENTER_ERR_MAX = 40; // 居中误差(px)
|
||||
private static final int CENTER_ERR_MAX = 25; // 居中误差(px)
|
||||
|
||||
public PIDControl pidControlX = null;
|
||||
public PIDControl pidControlY = null;
|
||||
|
|
@ -98,7 +107,7 @@ public class ApronArucoDetect {
|
|||
public boolean isDoublePayload() {
|
||||
return isDoublePayload;
|
||||
}
|
||||
|
||||
private Handler riseHandler = new Handler(Looper.getMainLooper());
|
||||
public void setDoublePayload(boolean doublePayload) {
|
||||
isDoublePayload = doublePayload;
|
||||
}
|
||||
|
|
@ -115,6 +124,7 @@ public class ApronArucoDetect {
|
|||
INSTANCE.init();
|
||||
}
|
||||
}
|
||||
private int trycount=0;
|
||||
|
||||
public static ApronArucoDetect getInstance() {
|
||||
return OpenCVHelperHolder.INSTANCE;
|
||||
|
|
@ -123,14 +133,13 @@ public class ApronArucoDetect {
|
|||
private static final float SLOW_LAND_SPEED = -0.3f; // 远场慢降
|
||||
private static final float SLOW_SUPER_SPEED = -0.1f; // 超近慢降
|
||||
|
||||
private static final int PIXEL_TRIGGER = 400; // 近场像素阈值
|
||||
private static final int PIXEL_TRIGGER = 360; // 近场像素阈值
|
||||
|
||||
public void init() {
|
||||
pidControlX = new PIDControl(0.6f, 0.015f, 0.12f, 0.05f, 2.0f, 0.05f);
|
||||
pidControlY = new PIDControl(0.6f, 0.015f, 0.12f, 0.05f, 2.0f, 0.05f);
|
||||
pidControlX = new PIDControl(0.6f, 0.08f, 0.18f, 0.05f, 2.5f, 0.04f);
|
||||
pidControlY = new PIDControl(0.6f, 0.08f, 0.18f, 0.05f, 2.5f, 0.04f);
|
||||
pidControlX.reset();
|
||||
pidControlY.reset();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -142,7 +151,7 @@ public class ApronArucoDetect {
|
|||
Movement.getInstance().setVirtualStickEnableReason(2);
|
||||
//保证一帧进入同时 保证只有一次速降
|
||||
if (isStartAruco || startFastStick) {
|
||||
// LogUtil.log(TAG, "过滤:" + isStartAruco + startFastStick);
|
||||
LogUtil.log(TAG, "过滤:" + isStartAruco + startFastStick);
|
||||
if (!isStartAruco && startFastStick) {
|
||||
checkThrowingErrorsTimes++;
|
||||
}
|
||||
|
|
@ -150,11 +159,31 @@ public class ApronArucoDetect {
|
|||
}
|
||||
|
||||
isStartAruco = true;
|
||||
|
||||
/* 如果上一帧任务还没跑完,直接 cancel */
|
||||
if (lastFuture != null && !lastFuture.isDone()) {
|
||||
LogUtil.log(TAG, "break---");
|
||||
lastFuture.cancel(true);
|
||||
}
|
||||
// 根据超声波高度分段固定偏移(避免 pixelWidth 跳变导致抖动)
|
||||
int ultHeight = Movement.getInstance().getUltrasonicHeight(); // dm
|
||||
if (ultHeight >= 30) {
|
||||
LENS_OFFSET_X = 0;
|
||||
LENS_OFFSET_Y = 0;
|
||||
} else if (ultHeight >= 20) {
|
||||
LENS_OFFSET_X = 0;
|
||||
LENS_OFFSET_Y = 0;
|
||||
} else if (ultHeight >= 10) {
|
||||
LENS_OFFSET_X = 20;
|
||||
LENS_OFFSET_Y = 10;
|
||||
} else if (ultHeight >= 5) {
|
||||
LENS_OFFSET_X = 30;
|
||||
LENS_OFFSET_Y = 20;
|
||||
} else {
|
||||
LENS_OFFSET_X = 50; // 建议从 60 开始试,80 可能太大
|
||||
LENS_OFFSET_Y = 25;
|
||||
}
|
||||
|
||||
|
||||
|
||||
//LogUtil.log(TAG, "执行了");
|
||||
|
|
@ -197,6 +226,7 @@ public class ApronArucoDetect {
|
|||
|
||||
boolean marker6Found = false;
|
||||
if (!ids.empty()) {
|
||||
trycount=0;
|
||||
arucoNotFoundTag = false;
|
||||
int[] idArray = ids.toArray();
|
||||
int ultrasonicHeight = Movement.getInstance().getUltrasonicHeight();
|
||||
|
|
@ -216,26 +246,36 @@ public class ApronArucoDetect {
|
|||
double pixelWidth = calculateDistance(points[0], points[1]);
|
||||
|
||||
// 【关键修改3】降落判断加上镜头偏移补偿(向右补偿)
|
||||
double centerX = (points[0].x + points[1].x + points[2].x + points[3].x) / 4.0;
|
||||
double errX = Math.abs(centerX - rgbMat.width() / 2.0 + LENS_OFFSET_X);
|
||||
double centerX = (points[0].x + points[1].x + points[2].x + points[3].x) / 4.0 +LENS_OFFSET_X;
|
||||
double errX = Math.abs(centerX - rgbMat.width() / 2.0 );
|
||||
// 修改为(向前补偿):
|
||||
double centerY = (points[0].y + points[1].y + points[2].y + points[3].y) / 4.0;
|
||||
double errY = Math.abs(centerY - rgbMat.height() / 2.0 - LENS_OFFSET_Y); ;
|
||||
double centerY = (points[0].y + points[1].y + points[2].y + points[3].y) / 4.0 +LENS_OFFSET_Y;
|
||||
double errY = Math.abs(centerY - rgbMat.height() / 2.0 ); ;
|
||||
|
||||
LogUtil.log(TAG, "像素" + (int) pixelWidth +
|
||||
" errX=" + (int) errX + " errY=" + (int) errY + " (含偏移" + LENS_OFFSET_X + ")");
|
||||
|
||||
/* 近场 + 对准 + 像素够 → 立即速降 */
|
||||
/* 近场 + 对准 + 像素够 → 延迟0.5s后速降 */
|
||||
if (!startFastStick &&
|
||||
pixelWidth >= PIXEL_TRIGGER &&
|
||||
// flyingHeight <= 1 &&
|
||||
ultrasonicHeight <= 4 &&
|
||||
errX < CENTER_ERR_MAX &&
|
||||
errY < CENTER_ERR_MAX) {
|
||||
startFastStick = true;
|
||||
handler.post(runnable);
|
||||
LogUtil.log(TAG, "6号居中+近场触发速降 pixel=" + (int) pixelWidth +
|
||||
|
||||
startFastStick = true; // 先标记,防止重复触发
|
||||
LogUtil.log(TAG, "6号居中+近场满足条件,0.5s后触发速降 pixel=" + (int) pixelWidth +
|
||||
" errX=" + (int) errX + " errY=" + (int) errY);
|
||||
|
||||
// 延迟500ms执行速降
|
||||
handler.postDelayed(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
handler.post(runnable); // 启动速降循环
|
||||
LogUtil.log(TAG, "0.5s延迟结束,开始速降");
|
||||
}
|
||||
}, 500);
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
@ -253,9 +293,9 @@ public class ApronArucoDetect {
|
|||
endTime = System.currentTimeMillis();
|
||||
long lostDuration = endTime - startTime;
|
||||
//1s到8s内
|
||||
if (lostDuration > 700 && lostDuration <= 8000) {
|
||||
if (lostDuration > 1200 && lostDuration <= 8000) {
|
||||
if (Movement.getInstance().getUltrasonicHeight()<=30) {
|
||||
DroneHelper.getInstance().moveVxVyYawrateHeight(0f, 0f, 0f, 0.3f);
|
||||
DroneHelper.getInstance().moveVxVyYawrateHeight(0f, 0f, 0f, 0.8f);
|
||||
if (dropTimes > Integer.parseInt(AMSConfig.getInstance().getAlternateLandingTimes())) {
|
||||
LogUtil.log(TAG, "超过复降限制,去备降点");
|
||||
AlternateLandingManager.getInstance().startTaskProcess(null);
|
||||
|
|
@ -394,18 +434,28 @@ public class ApronArucoDetect {
|
|||
}
|
||||
|
||||
/* 2. 中心 + 误差(带镜头偏移补偿) */
|
||||
double cx = (pts[0].x + pts[1].x + pts[2].x + pts[3].x) / 4.0;
|
||||
double cy = (pts[0].y + pts[1].y + pts[2].y + pts[3].y) / 4.0;
|
||||
double cx = (pts[0].x + pts[1].x + pts[2].x + pts[3].x) / 4.0 +LENS_OFFSET_X;
|
||||
double cy = (pts[0].y + pts[1].y + pts[2].y + pts[3].y) / 4.0 +LENS_OFFSET_Y;
|
||||
Point screenCenter = new Point(imageWidth / 2.0, imageHeight / 2.0);
|
||||
|
||||
double errX = (cx - screenCenter.x) + LENS_OFFSET_X; // 向右补偿
|
||||
double errY = (cy - screenCenter.y) - LENS_OFFSET_Y; // Y方向不变
|
||||
double errX = (cx - screenCenter.x);
|
||||
double errY = (cy - screenCenter.y);
|
||||
|
||||
/* 3. PID 微调水平 */
|
||||
pidControlX.setInputFilterAll((float) (errX / 700.0));
|
||||
pidControlY.setInputFilterAll((float) (-errY/ 700.0));
|
||||
float vx = (float) Math.max(-0.25, Math.min(0.25, pidControlX.get_pid()));
|
||||
float vy = (float) Math.max(-0.25, Math.min(0.25, pidControlY.get_pid()));
|
||||
pidControlY.setInputFilterAll((float) (-errY / 700.0));
|
||||
|
||||
|
||||
float rawVx = pidControlX.get_pid();
|
||||
float rawVy = pidControlY.get_pid();
|
||||
|
||||
|
||||
// if (Math.abs(rawVx) < 0.005f) rawVx = 0.0f;
|
||||
// if (Math.abs(rawVy) < 0.005f) rawVy = 0.0f;
|
||||
|
||||
|
||||
float vx = (float) Math.max(-0.25, Math.min(0.25, rawVx));
|
||||
float vy = (float) Math.max(-0.25, Math.min(0.25, rawVy));
|
||||
|
||||
/* 4. 远场慢降:像素 < 1500 且 > 2 m */
|
||||
double pixelWidth = Math.sqrt(Math.pow(pts[1].x - pts[0].x, 2) +
|
||||
|
|
@ -467,7 +517,7 @@ public class ApronArucoDetect {
|
|||
@Override
|
||||
public void run() {
|
||||
performOperation();
|
||||
if (handlerCallbackCount < 20) {
|
||||
if (handlerCallbackCount < 25) {
|
||||
handler.postDelayed(this, 50); // 每 50 毫秒执行一次,1 秒内执行 20 次
|
||||
} else {
|
||||
performNextStep();
|
||||
|
|
@ -485,9 +535,18 @@ public class ApronArucoDetect {
|
|||
canLanding = true;
|
||||
handlerCallbackCount = 0;
|
||||
dropTimes = 0;//手动测试避免多次累加后直接飞往备降点
|
||||
LogUtil.log(TAG, "下拉完成:触发下一步自动降落");
|
||||
// KeyManager.getInstance().performAction(KeyTools.createKey(FlightControllerKey.KeyStartAutoLanding), new CommonCallbacks.CompletionCallbackWithParam<EmptyMsg>() {
|
||||
// @Override
|
||||
// public void onSuccess(EmptyMsg emptyMsg) {
|
||||
// LogUtil.log(TAG, "下拉完成:触发下一步自动降落");
|
||||
// }
|
||||
//
|
||||
// @Override
|
||||
// public void onFailure(@NonNull IDJIError idjiError) {
|
||||
// LogUtil.log(TAG, "下拉完成:触发下一步自动降落失败");
|
||||
// }
|
||||
// });
|
||||
handler.removeCallbacks(runnable); // 防止重复执行
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -192,7 +192,7 @@ public class DroneHelper {
|
|||
virtualStickFlightControlParam.setRollPitchControlMode(RollPitchControlMode.VELOCITY);
|
||||
virtualStickFlightControlParam.setYawControlMode(YawControlMode.ANGULAR_VELOCITY);
|
||||
virtualStickFlightControlParam.setRollPitchCoordinateSystem(FlightCoordinateSystem.BODY);
|
||||
virtualStickFlightControlParam.setPitch(mPitch);//左右
|
||||
virtualStickFlightControlParam.setPitch(mPitch);
|
||||
virtualStickFlightControlParam.setRoll(mRoll);//前后
|
||||
virtualStickFlightControlParam.setYaw(mYaw);
|
||||
virtualStickFlightControlParam.setVerticalThrottle(mThrottle);//上下
|
||||
|
|
|
|||
|
|
@ -35,6 +35,86 @@ public class PIDControl {
|
|||
this.mResetFilter = true;
|
||||
}
|
||||
|
||||
public float getiMax() {
|
||||
return iMax;
|
||||
}
|
||||
|
||||
public void setiMax(float iMax) {
|
||||
this.iMax = iMax;
|
||||
}
|
||||
|
||||
public float getmFF() {
|
||||
return mFF;
|
||||
}
|
||||
|
||||
public void setmFF(float mFF) {
|
||||
this.mFF = mFF;
|
||||
}
|
||||
|
||||
public float getmFoltHz() {
|
||||
return mFoltHz;
|
||||
}
|
||||
|
||||
public void setmFoltHz(float mFoltHz) {
|
||||
this.mFoltHz = mFoltHz;
|
||||
}
|
||||
|
||||
public float getmKd() {
|
||||
return mKd;
|
||||
}
|
||||
|
||||
public void setmKd(float mKd) {
|
||||
this.mKd = mKd;
|
||||
}
|
||||
|
||||
public float getmKi() {
|
||||
return mKi;
|
||||
}
|
||||
|
||||
public void setmKi(float mKi) {
|
||||
this.mKi = mKi;
|
||||
}
|
||||
|
||||
public float getmKp() {
|
||||
return mKp;
|
||||
}
|
||||
|
||||
public void setmKp(float mKp) {
|
||||
this.mKp = mKp;
|
||||
}
|
||||
|
||||
public boolean ismResetFilter() {
|
||||
return mResetFilter;
|
||||
}
|
||||
|
||||
public void setmResetFilter(boolean mResetFilter) {
|
||||
this.mResetFilter = mResetFilter;
|
||||
}
|
||||
|
||||
public float getmIntegrator() {
|
||||
return mIntegrator;
|
||||
}
|
||||
|
||||
public void setmIntegrator(float mIntegrator) {
|
||||
this.mIntegrator = mIntegrator;
|
||||
}
|
||||
|
||||
public float getmInput() {
|
||||
return mInput;
|
||||
}
|
||||
|
||||
public void setmInput(float mInput) {
|
||||
this.mInput = mInput;
|
||||
}
|
||||
|
||||
public float getmDerivative() {
|
||||
return mDerivative;
|
||||
}
|
||||
|
||||
public void setmDerivative(float mDerivative) {
|
||||
this.mDerivative = mDerivative;
|
||||
}
|
||||
|
||||
private void filtHz(float hz) {
|
||||
float abs = Math.abs(hz);
|
||||
this.mFoltHz = abs;
|
||||
|
|
|
|||
|
|
@ -1,123 +0,0 @@
|
|||
|
||||
package com.aros.apron.tools;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.security.MessageDigest;
|
||||
import java.util.Locale;
|
||||
|
||||
import dji.v5.common.error.IDJIError;
|
||||
|
||||
public class Utils {
|
||||
public static void printJson(String tag, String json) {
|
||||
if (json == null || json.length() == 0) {
|
||||
Log.e(tag, "JSON is empty");
|
||||
return;
|
||||
}
|
||||
|
||||
int maxLogSize = 4000;
|
||||
for (int i = 0; i <= json.length() / maxLogSize; i++) {
|
||||
int start = i * maxLogSize;
|
||||
int end = (i + 1) * maxLogSize;
|
||||
if (end >= json.length()) {
|
||||
end = json.length();
|
||||
}
|
||||
Log.e(tag, json.substring(start, end));
|
||||
}
|
||||
}
|
||||
/**
|
||||
* //修改变焦数据为从前端拿2-200自己计算然后放入官方的sdk
|
||||
*
|
||||
* @param smallZoomFromWeb
|
||||
* @return
|
||||
*/
|
||||
public static int getbigZoomValue(String smallZoomFromWeb) {
|
||||
int zoomLength = Integer.parseInt(smallZoomFromWeb);
|
||||
int bigZoom = (47549 - 317) / 199 * (zoomLength - 2) + 317;
|
||||
return bigZoom;
|
||||
}
|
||||
|
||||
public static String sHA1(Context context){
|
||||
try {
|
||||
PackageInfo info = null;
|
||||
try {
|
||||
info = context.getPackageManager().getPackageInfo(
|
||||
context.getPackageName(), PackageManager.GET_SIGNATURES);
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
byte[] cert = info.signatures[0].toByteArray();
|
||||
MessageDigest md = MessageDigest.getInstance("SHA1");
|
||||
byte[] publicKey = md.digest(cert);
|
||||
StringBuffer hexString = new StringBuffer();
|
||||
for (int i = 0; i < publicKey.length; i++) {
|
||||
String appendString = Integer.toHexString(0xFF & publicKey[i])
|
||||
.toUpperCase(Locale.US);
|
||||
if (appendString.length() == 1)
|
||||
hexString.append("0");
|
||||
hexString.append(appendString);
|
||||
hexString.append(":");
|
||||
}
|
||||
String result = hexString.toString();
|
||||
return result.substring(0, result.length()-1);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
public static byte[] getByte(String str){
|
||||
try {
|
||||
byte[] bytes = str.getBytes("UTF-8");
|
||||
return bytes;
|
||||
// 使用bytes
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
// 处理异常,比如使用默认字符集
|
||||
byte[] bytes = str.getBytes();
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static double parseLatLon(String latLonStr) {
|
||||
// 检查输入字符串是否为空或无效
|
||||
if (latLonStr == null || latLonStr.isEmpty()) {
|
||||
throw new IllegalArgumentException("Input string is null or empty");
|
||||
}
|
||||
|
||||
// 获取最后一个字符,即方向标识符
|
||||
char direction = latLonStr.charAt(latLonStr.length() - 1);
|
||||
|
||||
// 检查方向标识符是否有效
|
||||
if (direction != 'N' && direction != 'S' && direction != 'E' && direction != 'W') {
|
||||
return Double.parseDouble(latLonStr); }
|
||||
|
||||
// 提取数字部分
|
||||
String numberPart = latLonStr.substring(0, latLonStr.length() - 1);
|
||||
|
||||
// 将数字部分转换为Double
|
||||
double number = Double.parseDouble(numberPart);
|
||||
|
||||
// 根据方向标识符调整数值
|
||||
if (direction == 'S' || direction == 'W') {
|
||||
number = -number;
|
||||
}
|
||||
|
||||
return number;
|
||||
}
|
||||
|
||||
public static String getIDJIErrorMsg(IDJIError idjiError){
|
||||
if (TextUtils.isEmpty(idjiError.description())){
|
||||
return new Gson().toJson(idjiError);
|
||||
}else{
|
||||
return idjiError.description();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -299,13 +299,25 @@
|
|||
tools:ignore="MissingConstraints">
|
||||
<Button
|
||||
android:id="@+id/btn_test"
|
||||
android:text="旋转"
|
||||
android:text="向前"
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="100dp"
|
||||
/>
|
||||
<Button
|
||||
android:id="@+id/btn_test1"
|
||||
android:text="停转"
|
||||
android:text="向后"
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="100dp"
|
||||
/>
|
||||
<Button
|
||||
android:id="@+id/btn_test2"
|
||||
android:text="向左"
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="100dp"
|
||||
/>
|
||||
<Button
|
||||
android:id="@+id/btn_test3"
|
||||
android:text="向右"
|
||||
android:layout_width="100dp"
|
||||
android:layout_height="100dp"
|
||||
/>
|
||||
|
|
|
|||
Loading…
Reference in New Issue