expo-gaode-map 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/ExpoSmartrefreshlayoutModule.swift +119 -0
  2. package/README.md +35 -496
  3. package/android/src/main/java/expo/modules/gaodemap/ExpoGaodeMapModule.kt +7 -8
  4. package/android/src/main/java/expo/modules/gaodemap/ExpoGaodeMapView.kt +9 -1
  5. package/android/src/main/java/expo/modules/gaodemap/managers/CameraManager.kt +14 -0
  6. package/android/src/main/java/expo/modules/gaodemap/managers/OverlayManager.kt +11 -45
  7. package/android/src/main/java/expo/modules/gaodemap/managers/UIManager.kt +111 -9
  8. package/android/src/main/java/expo/modules/gaodemap/utils/ColorParser.kt +48 -0
  9. package/build/components/overlays/Polyline.d.ts.map +1 -1
  10. package/build/components/overlays/Polyline.js +10 -17
  11. package/build/components/overlays/Polyline.js.map +1 -1
  12. package/build/index.d.ts +1 -1
  13. package/build/index.d.ts.map +1 -1
  14. package/build/index.js +2 -2
  15. package/build/index.js.map +1 -1
  16. package/build/modules/AMapSDK.d.ts +0 -6
  17. package/build/modules/AMapSDK.d.ts.map +1 -1
  18. package/build/modules/AMapSDK.js +2 -11
  19. package/build/modules/AMapSDK.js.map +1 -1
  20. package/build/types/map-view.types.d.ts +27 -5
  21. package/build/types/map-view.types.d.ts.map +1 -1
  22. package/build/types/map-view.types.js.map +1 -1
  23. package/docs/API.md +248 -0
  24. package/docs/EXAMPLES.md +479 -0
  25. package/ios/ColorParser.swift +158 -0
  26. package/ios/ExpoGaodeMap.podspec +1 -0
  27. package/ios/ExpoGaodeMapModule.swift +445 -42
  28. package/ios/ExpoGaodeMapView.swift +278 -32
  29. package/ios/UIColorExtension.swift +11 -0
  30. package/ios/managers/CameraManager.swift +107 -0
  31. package/ios/managers/OverlayManager.swift +210 -0
  32. package/ios/managers/UIManager.swift +163 -0
  33. package/ios/modules/LocationManager.swift +144 -0
  34. package/ios/overlays/CircleView.swift +76 -0
  35. package/ios/overlays/ClusterView.swift +56 -0
  36. package/ios/overlays/HeatMapView.swift +98 -0
  37. package/ios/overlays/MarkerView.swift +81 -0
  38. package/ios/overlays/MultiPointView.swift +50 -0
  39. package/ios/overlays/PolygonView.swift +70 -0
  40. package/ios/overlays/PolylineView.swift +62 -0
  41. package/lib/android/.gradle/8.9/checksums/checksums.lock +0 -0
  42. package/lib/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
  43. package/lib/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
  44. package/lib/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
  45. package/lib/android/.gradle/8.9/gc.properties +0 -0
  46. package/lib/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
  47. package/lib/android/.gradle/buildOutputCleanup/cache.properties +2 -0
  48. package/lib/android/.gradle/vcs-1/gc.properties +0 -0
  49. package/lib/android/build/.transforms/7df4812a1bb640a0eb92904b45f433ca/results.bin +1 -0
  50. package/lib/android/build/.transforms/7df4812a1bb640a0eb92904b45f433ca/transformed/classes/classes_dex/classes.dex +0 -0
  51. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/results.bin +1 -0
  52. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/AMap3DPackage.dex +0 -0
  53. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/BuildConfig.dex +0 -0
  54. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/UtilsKt$fetchImage$request$1$1.dex +0 -0
  55. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/UtilsKt.dex +0 -0
  56. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Circle.dex +0 -0
  57. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/CircleManager.dex +0 -0
  58. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/HeatMap.dex +0 -0
  59. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/HeatMapManager.dex +0 -0
  60. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView$7.dex +0 -0
  61. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView$8.dex +0 -0
  62. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView$animateCallback$1.dex +0 -0
  63. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView.dex +0 -0
  64. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapViewManager$commands$1.dex +0 -0
  65. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapViewManager$commands$2.dex +0 -0
  66. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapViewManager.dex +0 -0
  67. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Marker$setIcon$1.dex +0 -0
  68. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Marker.dex +0 -0
  69. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MarkerManager$Companion.dex +0 -0
  70. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MarkerManager.dex +0 -0
  71. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MultiPoint$setIcon$1.dex +0 -0
  72. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MultiPoint.dex +0 -0
  73. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MultiPointManager.dex +0 -0
  74. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Overlay.dex +0 -0
  75. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Polygon.dex +0 -0
  76. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/PolygonManager.dex +0 -0
  77. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Polyline.dex +0 -0
  78. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/PolylineManager.dex +0 -0
  79. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/modules/SdkModule.dex +0 -0
  80. package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/desugar_graph.bin +0 -0
  81. package/lib/android/build/generated/source/buildConfig/debug/qiuxiang/amap3d/BuildConfig.java +10 -0
  82. package/lib/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml +14 -0
  83. package/lib/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json +18 -0
  84. package/lib/android/build/intermediates/aar_metadata/debug/aar-metadata.properties +6 -0
  85. package/lib/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json +1 -0
  86. package/lib/android/build/intermediates/compile_library_classes_jar/debug/classes.jar +0 -0
  87. package/lib/android/build/intermediates/compile_r_class_jar/debug/R.jar +0 -0
  88. package/lib/android/build/intermediates/compile_symbol_list/debug/R.txt +1 -0
  89. package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-hdpi-v4_positio_icon.png.flat +0 -0
  90. package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-mdpi-v4_positio_icon.png.flat +0 -0
  91. package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-xhdpi-v4_positio_icon.png.flat +0 -0
  92. package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-xxhdpi-v4_positio_icon.png.flat +0 -0
  93. package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-xxxhdpi-v4_positio_icon.png.flat +0 -0
  94. package/lib/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +6 -0
  95. package/lib/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  96. package/lib/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  97. package/lib/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  98. package/lib/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
  99. package/lib/android/build/intermediates/java_res/debug/out/META-INF/react-native-amap3d_debug.kotlin_module +0 -0
  100. package/lib/android/build/intermediates/javac/debug/classes/qiuxiang/amap3d/BuildConfig.class +0 -0
  101. package/lib/android/build/intermediates/local_only_symbol_list/debug/R-def.txt +3 -0
  102. package/lib/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt +26 -0
  103. package/lib/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml +14 -0
  104. package/lib/android/build/intermediates/navigation_json/debug/navigation.json +1 -0
  105. package/lib/android/build/intermediates/packaged_res/debug/drawable-hdpi-v4/positio_icon.png +0 -0
  106. package/lib/android/build/intermediates/packaged_res/debug/drawable-mdpi-v4/positio_icon.png +0 -0
  107. package/lib/android/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/positio_icon.png +0 -0
  108. package/lib/android/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/positio_icon.png +0 -0
  109. package/lib/android/build/intermediates/packaged_res/debug/drawable-xxxhdpi-v4/positio_icon.png +0 -0
  110. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/META-INF/react-native-amap3d_debug.kotlin_module +0 -0
  111. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/AMap3DPackage.class +0 -0
  112. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/BuildConfig.class +0 -0
  113. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/UtilsKt$fetchImage$request$1$1.class +0 -0
  114. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/UtilsKt.class +0 -0
  115. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Circle.class +0 -0
  116. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/CircleManager.class +0 -0
  117. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/HeatMap.class +0 -0
  118. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/HeatMapManager.class +0 -0
  119. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView$7.class +0 -0
  120. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView$8.class +0 -0
  121. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView$animateCallback$1.class +0 -0
  122. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView.class +0 -0
  123. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$1.class +0 -0
  124. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$2.class +0 -0
  125. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapViewManager.class +0 -0
  126. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Marker$setIcon$1.class +0 -0
  127. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Marker.class +0 -0
  128. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MarkerManager$Companion.class +0 -0
  129. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MarkerManager.class +0 -0
  130. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MultiPoint$setIcon$1.class +0 -0
  131. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MultiPoint.class +0 -0
  132. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MultiPointManager.class +0 -0
  133. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Overlay.class +0 -0
  134. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Polygon.class +0 -0
  135. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/PolygonManager.class +0 -0
  136. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Polyline.class +0 -0
  137. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/PolylineManager.class +0 -0
  138. package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/modules/SdkModule.class +0 -0
  139. package/lib/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar +0 -0
  140. package/lib/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt +2 -0
  141. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
  142. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
  143. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
  144. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
  145. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
  146. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
  147. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
  148. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
  149. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
  150. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
  151. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
  152. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
  153. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
  154. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
  155. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
  156. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
  157. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
  158. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
  159. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
  160. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
  161. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
  162. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
  163. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
  164. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
  165. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
  166. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
  167. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
  168. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
  169. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
  170. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
  171. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
  172. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
  173. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
  174. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
  175. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
  176. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab +0 -0
  177. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream +0 -0
  178. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len +0 -0
  179. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len +0 -0
  180. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at +0 -0
  181. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i +0 -0
  182. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len +0 -0
  183. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
  184. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
  185. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
  186. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
  187. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
  188. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
  189. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
  190. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
  191. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
  192. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
  193. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
  194. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
  195. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
  196. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
  197. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
  198. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
  199. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
  200. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
  201. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
  202. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
  203. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
  204. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
  205. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
  206. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
  207. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
  208. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
  209. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
  210. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
  211. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +2 -0
  212. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
  213. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
  214. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
  215. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
  216. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
  217. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
  218. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
  219. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
  220. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
  221. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
  222. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
  223. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
  224. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
  225. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
  226. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
  227. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
  228. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
  229. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
  230. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values +0 -0
  231. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
  232. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s +1 -0
  233. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
  234. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
  235. package/lib/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
  236. package/lib/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
  237. package/lib/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
  238. package/lib/android/build/outputs/logs/manifest-merger-debug-report.txt +41 -0
  239. package/lib/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  240. package/lib/android/build/tmp/kotlin-classes/debug/META-INF/react-native-amap3d_debug.kotlin_module +0 -0
  241. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/AMap3DPackage.class +0 -0
  242. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/UtilsKt$fetchImage$request$1$1.class +0 -0
  243. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/UtilsKt.class +0 -0
  244. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Circle.class +0 -0
  245. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/CircleManager.class +0 -0
  246. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/HeatMap.class +0 -0
  247. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/HeatMapManager.class +0 -0
  248. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView$7.class +0 -0
  249. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView$8.class +0 -0
  250. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView$animateCallback$1.class +0 -0
  251. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView.class +0 -0
  252. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$1.class +0 -0
  253. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$2.class +0 -0
  254. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapViewManager.class +0 -0
  255. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Marker$setIcon$1.class +0 -0
  256. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Marker.class +0 -0
  257. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MarkerManager$Companion.class +0 -0
  258. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MarkerManager.class +0 -0
  259. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MultiPoint$setIcon$1.class +0 -0
  260. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MultiPoint.class +0 -0
  261. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MultiPointManager.class +0 -0
  262. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Overlay.class +0 -0
  263. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Polygon.class +0 -0
  264. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/PolygonManager.class +0 -0
  265. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Polyline.class +0 -0
  266. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/PolylineManager.class +0 -0
  267. package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/modules/SdkModule.class +0 -0
  268. package/lib/android/build.gradle +34 -0
  269. package/lib/android/drawable/rn_edit_text_material.xml +37 -0
  270. package/lib/android/drawable-hdpi/positio_icon.png +0 -0
  271. package/lib/android/drawable-hdpi/splashscreen_image.png +0 -0
  272. package/lib/android/drawable-mdpi/splashscreen_image.png +0 -0
  273. package/lib/android/drawable-xhdpi/splashscreen_image.png +0 -0
  274. package/lib/android/drawable-xxhdpi/splashscreen_image.png +0 -0
  275. package/lib/android/drawable-xxxhdpi/splashscreen_image.png +0 -0
  276. package/lib/android/src/main/AndroidManifest.xml +10 -0
  277. package/lib/android/src/main/java/qiuxiang/amap3d/AMap3DPackage.kt +30 -0
  278. package/lib/android/src/main/java/qiuxiang/amap3d/Utils.kt +114 -0
  279. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Circle.kt +65 -0
  280. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/CircleManager.kt +49 -0
  281. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/HeatMap.kt +32 -0
  282. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/HeatMapManager.kt +33 -0
  283. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MapView.kt +190 -0
  284. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MapViewManager.kt +181 -0
  285. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Marker.kt +102 -0
  286. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MarkerManager.kt +78 -0
  287. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MultiPoint.kt +53 -0
  288. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MultiPointManager.kt +33 -0
  289. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Overlay.kt +8 -0
  290. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Polygon.kt +58 -0
  291. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/PolygonManager.kt +44 -0
  292. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Polyline.kt +69 -0
  293. package/lib/android/src/main/java/qiuxiang/amap3d/map_view/PolylineManager.kt +64 -0
  294. package/lib/android/src/main/java/qiuxiang/amap3d/modules/AMapGeolocationModule.kt +468 -0
  295. package/lib/android/src/main/java/qiuxiang/amap3d/modules/SdkModule.kt +31 -0
  296. package/lib/android/src/main/res/drawable-hdpi/positio_icon.png +0 -0
  297. package/lib/android/src/main/res/drawable-mdpi/positio_icon.png +0 -0
  298. package/lib/android/src/main/res/drawable-xhdpi/positio_icon.png +0 -0
  299. package/lib/android/src/main/res/drawable-xxhdpi/positio_icon.png +0 -0
  300. package/lib/android/src/main/res/drawable-xxxhdpi/positio_icon.png +0 -0
  301. package/lib/ios/.swiftformat +2 -0
  302. package/lib/ios/Bridging-Header.h +4 -0
  303. package/lib/ios/MapView/CircleManager.m +11 -0
  304. package/lib/ios/MapView/CircleManager.swift +30 -0
  305. package/lib/ios/MapView/HeatMapManager.m +9 -0
  306. package/lib/ios/MapView/HeatMapManager.swift +29 -0
  307. package/lib/ios/MapView/MapViewManager.m +35 -0
  308. package/lib/ios/MapView/MapViewManager.swift +188 -0
  309. package/lib/ios/MapView/MarkerManager.m +18 -0
  310. package/lib/ios/MapView/MarkerManager.swift +100 -0
  311. package/lib/ios/MapView/MultiPointManager.m +9 -0
  312. package/lib/ios/MapView/MultiPointManager.swift +47 -0
  313. package/lib/ios/MapView/Overlay.swift +4 -0
  314. package/lib/ios/MapView/PolygonManager.m +10 -0
  315. package/lib/ios/MapView/PolygonManager.swift +30 -0
  316. package/lib/ios/MapView/PolylineManager.m +12 -0
  317. package/lib/ios/MapView/PolylineManager.swift +41 -0
  318. package/lib/ios/Modules/SdkModule.m +8 -0
  319. package/lib/ios/Modules/SdkModule.swift +16 -0
  320. package/lib/ios/RNAMapGeolocation.h +8 -0
  321. package/lib/ios/RNAMapGeolocation.m +302 -0
  322. package/lib/ios/Utils.swift +104 -0
  323. package/lib/ios/react-native-amap3d.podspec +21 -0
  324. package/lib/src/circle.tsx +36 -0
  325. package/lib/src/cluster/cluster-view.tsx +58 -0
  326. package/lib/src/cluster/index.tsx +159 -0
  327. package/lib/src/component.ts +31 -0
  328. package/lib/src/geolocation/index.d.ts +287 -0
  329. package/lib/src/geolocation/index.js +344 -0
  330. package/lib/src/heat-map.tsx +21 -0
  331. package/lib/src/index.ts +13 -0
  332. package/lib/src/location/index.d.ts +287 -0
  333. package/lib/src/location/index.js +344 -0
  334. package/lib/src/map-view.tsx +230 -0
  335. package/lib/src/marker.tsx +128 -0
  336. package/lib/src/multi-point.tsx +28 -0
  337. package/lib/src/polygon.tsx +31 -0
  338. package/lib/src/polyline.tsx +65 -0
  339. package/lib/src/sdk.ts +11 -0
  340. package/lib/src/types.ts +137 -0
  341. package/package.json +2 -2
  342. package/src/components/overlays/Polyline.tsx +11 -19
  343. package/src/index.ts +2 -2
  344. package/src/modules/AMapSDK.ts +2 -12
  345. package/src/types/map-view.types.ts +27 -5
  346. package/docs/followUserLocation.md +0 -186
  347. package/src/types/README.md +0 -186
@@ -0,0 +1,468 @@
1
+ package qiuxiang.amap3d.modules
2
+
3
+ import com.amap.api.location.AMapLocation
4
+ import com.amap.api.location.AMapLocationClient
5
+ import com.amap.api.location.AMapLocationClientOption
6
+ import com.amap.api.location.AMapLocationClientOption.AMapLocationProtocol
7
+ import com.amap.api.location.AMapLocationListener
8
+ import com.amap.api.location.CoordinateConverter
9
+ import com.amap.api.location.DPoint
10
+ import com.facebook.react.bridge.Arguments
11
+ import com.facebook.react.bridge.Promise
12
+ import com.facebook.react.bridge.ReactApplicationContext
13
+ import com.facebook.react.bridge.ReactContext
14
+ import com.facebook.react.bridge.ReactContextBaseJavaModule
15
+ import com.facebook.react.bridge.ReactMethod
16
+ import com.facebook.react.bridge.ReadableMap
17
+ import com.facebook.react.bridge.WritableMap
18
+
19
+
20
+ class RNAMapGeolocationModule(private val reactContext: ReactApplicationContext) :
21
+ ReactContextBaseJavaModule(
22
+ reactContext
23
+ ) {
24
+ private var eventEmitter: ReactContext.RCTDeviceEventEmitter? = null
25
+
26
+ // 声明AMapLocationClient类对象
27
+ private var client: AMapLocationClient? = null
28
+
29
+ // 初始化 AMapLocationClientOption 对象
30
+ private val option = AMapLocationClientOption()
31
+ private var mLastAMapLocation: AMapLocation? = null
32
+
33
+ @ReactMethod
34
+ @Throws(Exception::class)
35
+ fun setApiKey(key: String?) {
36
+ if (client != null) {
37
+ // client = null;
38
+ client!!.onDestroy()
39
+ }
40
+ // 通过SDK提供的 `setApiKey(String key);` 接口设置Key,注意Key设置要在SDK业务初始化之前。
41
+ // 需要在初始化的额前面设置 key
42
+ AMapLocationClient.setApiKey(key)
43
+ /**
44
+ * 设置包含隐私政策,并展示用户授权弹窗 `必须在 AmapLocationClient 实例化之前调用`
45
+ * @param context
46
+ * @param isContains: 是隐私权政策是否包含高德开平隐私权政策 true 是包含
47
+ * @param isShow: 隐私权政策是否弹窗展示告知用户 true 是展示
48
+ * @since 5.6.0
49
+ */
50
+ AMapLocationClient.updatePrivacyShow(this.reactContext, true, true)
51
+ /**
52
+ * 设置是否同意用户授权政策 `必须在 AmapLocationClient 实例化之前调用
53
+ * https://lbs.amap.com/api/android-location-sdk/guide/create-project/dev-attention#t1
54
+ * @param context
55
+ * @param isAgree:隐私权政策是否取得用户同意 true 是用户同意
56
+ *
57
+ * @since 5.6.0
58
+ */
59
+ AMapLocationClient.updatePrivacyAgree(this.reactContext, true)
60
+ // 初始化定位
61
+ client = AMapLocationClient(reactContext.applicationContext)
62
+ //设置定位参数
63
+ client!!.setLocationOption(option)
64
+ // 设置定位监听
65
+ client!!.setLocationListener(locationListener)
66
+ // 用于在 React Native 中获取 DeviceEventManagerModule.RCTDeviceEventEmitter 类的 JS Module 对象,
67
+ // 以便在 JS 端发送和侦听基于设备事件的消息
68
+ eventEmitter =
69
+ reactContext.getJSModule<ReactContext.RCTDeviceEventEmitter>(ReactContext.RCTDeviceEventEmitter::class.java)
70
+ }
71
+
72
+ override fun getName(): String {
73
+ return "RNAMapGeolocation"
74
+ }
75
+
76
+ /**
77
+ * 定位监听
78
+ */
79
+ var locationListener: AMapLocationListener = object : AMapLocationListener {
80
+ override fun onLocationChanged(location: AMapLocation) {
81
+ println("client.onLocationChanged()!~!!!!!!")
82
+ mLastAMapLocation = location
83
+ deviceEventEmitter?.emit("AMapGeolocation", toJSON(location))
84
+ }
85
+ }
86
+
87
+ @ReactMethod
88
+ fun removeListeners(count: Int?) {
89
+ // client.stopLocation();
90
+ }
91
+
92
+ @ReactMethod
93
+ fun getCurrentLocation(promise: Promise) {
94
+ try {
95
+ if (client == null) {
96
+ promise.reject("-1", "尚未调用 setApiKey() 进行初始化")
97
+ return
98
+ }
99
+ if (!client!!.isStarted) {
100
+ client!!.startLocation()
101
+ }
102
+ // System.out.println(mLastAMapLocation);
103
+ promise.resolve(toJSON(mLastAMapLocation))
104
+ client!!.stopLocation()
105
+ } catch (e: Exception) {
106
+ promise.reject("-110", e.message)
107
+ }
108
+ }
109
+
110
+ @ReactMethod
111
+ fun getLastKnownLocation(promise: Promise) {
112
+ if (client == null) {
113
+ promise.reject("-1", "尚未调用 setApiKey() 进行初始化")
114
+ return
115
+ }
116
+ val location = client!!.lastKnownLocation
117
+ promise.resolve(toJSON(location))
118
+ }
119
+
120
+ @ReactMethod
121
+ fun start() {
122
+ if (client == null) {
123
+ return
124
+ }
125
+ client!!.startLocation()
126
+ }
127
+
128
+ @ReactMethod
129
+ fun stop() {
130
+ if (client == null) {
131
+ return
132
+ }
133
+ client!!.stopLocation()
134
+ }
135
+
136
+ @ReactMethod
137
+ fun isStarted(promise: Promise) {
138
+ if (client == null) {
139
+ promise.reject("-1", "尚未调用 setApiKey() 进行初始化")
140
+ return
141
+ }
142
+ promise.resolve(client!!.isStarted)
143
+ }
144
+
145
+ /**
146
+ * 默认的定位参数
147
+ */
148
+ // private AMapLocationClientOption getDefaultOption(){
149
+ // AMapLocationClientOption mOption = new AMapLocationClientOption();
150
+ // mOption.setLocationMode(AMapLocationMode.Hight_Accuracy);//可选,设置定位模式,可选的模式有高精度、仅设备、仅网络。默认为高精度模式
151
+ // mOption.setGpsFirst(false);//可选,设置是否gps优先,只在高精度模式下有效。默认关闭
152
+ // mOption.setHttpTimeOut(30000);//可选,设置网络请求超时时间。默认为30秒。在仅设备模式下无效
153
+ // mOption.setInterval(2000); //可选,设置定位间隔。默认为2秒
154
+ // mOption.setNeedAddress(true);//可选,设置是否返回逆地理地址信息。默认是true
155
+ // mOption.setOnceLocation(false);//可选,设置是否单次定位。默认是false
156
+ // mOption.setOnceLocationLatest(false);//可选,设置是否等待wifi刷新,默认为false.如果设置为true,会自动变为单次定位,持续定位时不要使用
157
+ // AMapLocationClientOption.setLocationProtocol(AMapLocationProtocol.HTTP);//可选, 设置网络请求的协议。可选HTTP或者HTTPS。默认为HTTP
158
+ // mOption.setSensorEnable(false);//可选,设置是否使用传感器。默认是false
159
+ // mOption.setWifiScan(true); //可选,设置是否开启wifi扫描。默认为true,如果设置为false会同时停止主动刷新,停止以后完全依赖于系统刷新,定位位置可能存在误差
160
+ // mOption.setLocationCacheEnable(true); //可选,设置是否使用缓存定位,默认为true
161
+ // mOption.setGeoLanguage(AMapLocationClientOption.GeoLanguage.DEFAULT);//可选,设置逆地理信息的语言,默认值为默认语言(根据所在地区选择语言)
162
+ // return mOption;
163
+ // }
164
+ /**
165
+ * 设置网络请求的协议, 默认值:HTTP
166
+ * @param amapLocationProtocol 可选协议类型:HTTP, HTTPS -wx
167
+ */
168
+ fun setLocationProtocol(amapLocationProtocol: AMapLocationProtocol?) {
169
+ if (client == null) {
170
+ return
171
+ }
172
+ AMapLocationClientOption.setLocationProtocol(amapLocationProtocol)
173
+ client!!.setLocationOption(option)
174
+ }
175
+
176
+ /**
177
+ * 设置网络请求超时时间,默认:30秒-wx
178
+ */
179
+ @ReactMethod
180
+ fun setHttpTimeOut(httpTimeOut: Int) {
181
+ if (client == null) {
182
+ return
183
+ }
184
+ option.setHttpTimeOut(httpTimeOut.toLong())
185
+ client!!.setLocationOption(option)
186
+ }
187
+
188
+ /**
189
+ * 设置是否使用缓存策略-wx
190
+ */
191
+ @ReactMethod
192
+ fun setLocationCacheEnable(isLocationCacheEnable: Boolean) {
193
+ if (client == null) {
194
+ return
195
+ }
196
+ option.setLocationCacheEnable(isLocationCacheEnable)
197
+ client!!.setLocationOption(option)
198
+ }
199
+
200
+ /**
201
+ * 设置是否等待wifi刷新-wx
202
+ */
203
+ @ReactMethod
204
+ fun setOnceLocationLatest(isOnceLocationLatest: Boolean) {
205
+ if (client == null) {
206
+ return
207
+ }
208
+ option.setOnceLocationLatest(isOnceLocationLatest)
209
+ client!!.setLocationOption(option)
210
+ }
211
+
212
+ /**
213
+ * 设置是否gps优先-wx
214
+ */
215
+ @ReactMethod
216
+ fun setGpsFirst(isSetGpsFirst: Boolean) {
217
+ if (client == null) {
218
+ return
219
+ }
220
+ option.setGpsFirst(isSetGpsFirst)
221
+ client!!.setLocationOption(option)
222
+ }
223
+
224
+ /**
225
+ * 设置发起定位请求的时间间隔,单位:毫秒,默认值:2000毫秒
226
+ */
227
+ @ReactMethod
228
+ fun setInterval(interval: Int) {
229
+ if (client == null) {
230
+ return
231
+ }
232
+ option.setInterval(interval.toLong())
233
+ client!!.setLocationOption(option)
234
+ }
235
+
236
+ /**
237
+ * 设置是否单次定位
238
+ */
239
+ @ReactMethod
240
+ fun setOnceLocation(isOnceLocation: Boolean) {
241
+ if (client == null) {
242
+ return
243
+ }
244
+ option.setOnceLocation(isOnceLocation)
245
+ client!!.setLocationOption(option)
246
+ }
247
+
248
+ /**
249
+ * 设置逆地理信息的语言,目前之中中文和英文
250
+ */
251
+ @ReactMethod
252
+ fun setGeoLanguage(language: String?) {
253
+ if (client == null) {
254
+ return
255
+ }
256
+ option.setGeoLanguage(AMapLocationClientOption.GeoLanguage.valueOf(language!!))
257
+ client!!.setLocationOption(option)
258
+ }
259
+
260
+ /**
261
+ * 设置定位模式。默认值:Hight_Accuracy 高精度模式
262
+ * android 默认定位模式,目前支持三种定位模式
263
+ * - `Hight_Accuracy` 高精度定位模式:在这种定位模式下,将同时使用高德网络定位和卫星定位,优先返回精度高的定位
264
+ * - `Battery_Saving` 低功耗定位模式:在这种模式下,将只使用高德网络定位
265
+ * - `Device_Sensors` 仅设备定位模式:在这种模式下,将只使用卫星定位。
266
+ */
267
+ @ReactMethod
268
+ fun setLocationMode(mode: String?) {
269
+ if (client == null) {
270
+ return
271
+ }
272
+ option.setLocationMode(AMapLocationClientOption.AMapLocationMode.valueOf(mode!!))
273
+ client!!.setLocationOption(option)
274
+ }
275
+
276
+ /**
277
+ * 设置是否返回地址信息,默认返回地址信息
278
+ * 默认值:true, 返回地址信息
279
+ */
280
+ @ReactMethod
281
+ fun setNeedAddress(value: Boolean) {
282
+ if (client == null) {
283
+ return
284
+ }
285
+ option.setNeedAddress(value)
286
+ client!!.setLocationOption(option)
287
+ }
288
+
289
+ @ReactMethod
290
+ fun coordinateConvert(point: ReadableMap, typer: Int, promise: Promise) {
291
+ if (client == null) {
292
+ return
293
+ }
294
+ try {
295
+ // { latitude: 40.002172, longitude: 116.467357 }
296
+ // 构造一个示例坐标,第一个参数是纬度,第二个参数是经度
297
+ val pointer = DPoint(point.getDouble("latitude"), point.getDouble("longitude"))
298
+ // DPoint pointer = new DPoint(39.911127, 116.433608);
299
+ // 初始化坐标转换类
300
+ val converter = CoordinateConverter(
301
+ reactContext.applicationContext
302
+ )
303
+ /**
304
+ * 设置坐标来源,这里使用百度坐标作为示例
305
+ * 可选的来源包括:
306
+ * - CoordType.BAIDU: 百度坐标
307
+ * - CoordType.MAPBAR: 图吧坐标
308
+ * - CoordType.MAPABC: 图盟坐标
309
+ * - CoordType.SOSOMAP: 搜搜坐标
310
+ * - CoordType.ALIYUN: 阿里云坐标
311
+ * - CoordType.GOOGLE: 谷歌坐标
312
+ * - CoordType.GPS: GPS坐标
313
+ */
314
+ when (typer) {
315
+ 0 -> converter.from(CoordinateConverter.CoordType.BAIDU)
316
+ 1 -> converter.from(CoordinateConverter.CoordType.MAPBAR)
317
+ 2 -> converter.from(CoordinateConverter.CoordType.MAPABC)
318
+ 3 -> converter.from(CoordinateConverter.CoordType.SOSOMAP)
319
+ 4 -> converter.from(CoordinateConverter.CoordType.ALIYUN)
320
+ 5 -> converter.from(CoordinateConverter.CoordType.GOOGLE)
321
+ 6 -> converter.from(CoordinateConverter.CoordType.GPS)
322
+ else -> {}
323
+ }
324
+ converter.coord(pointer)
325
+ // 转换成高德坐标
326
+ val destPoint = converter.convert()
327
+ val map = Arguments.createMap()
328
+ map.putDouble("latitude", destPoint.latitude)
329
+ map.putDouble("longitude", destPoint.longitude)
330
+ promise.resolve(map)
331
+ } catch (e: Exception) {
332
+ promise.reject("-11", e.message)
333
+ }
334
+ }
335
+
336
+ /**
337
+ * 设置是否允许调用WIFI刷新 默认值为true,当设置为false时会停止主动调用WIFI刷新,将会极大程度影响定位精度,但可以有效的降低定位耗电
338
+ * 默认值:true, 返回地址信息
339
+ */
340
+ @ReactMethod
341
+ fun setWifiScan(isWifiPassiveScan: Boolean) {
342
+ if (client == null) {
343
+ return
344
+ }
345
+ option.setWifiScan(isWifiPassiveScan)
346
+ client!!.setLocationOption(option)
347
+ }
348
+
349
+ /**
350
+ * 设置是否使用设备传感器。是否开启设备传感器,当设置为true时,网络定位可以返回海拔、角度和速度。
351
+ * [高德地图 setSensorEnable 文档](http://amappc.cn-hangzhou.oss-pub.aliyun-inc.com/lbs/static/unzip/Android_Location_Doc/index.html)
352
+ * @default false
353
+ * @platform android
354
+ */
355
+ @ReactMethod
356
+ fun setSensorEnable(sensorEnable: Boolean) {
357
+ if (client == null) {
358
+ return
359
+ }
360
+ option.setSensorEnable(sensorEnable)
361
+ client!!.setLocationOption(option)
362
+ }
363
+
364
+ private val deviceEventEmitter: ReactContext.RCTDeviceEventEmitter?
365
+ get() {
366
+ if (eventEmitter == null) {
367
+ eventEmitter =
368
+ reactContext.getJSModule<ReactContext.RCTDeviceEventEmitter>(ReactContext.RCTDeviceEventEmitter::class.java)
369
+ }
370
+ return eventEmitter
371
+ }
372
+
373
+ private fun toJSON(location: AMapLocation?): WritableMap? {
374
+ if (location == null) {
375
+ return null
376
+ }
377
+ val map = Arguments.createMap()
378
+ map.putInt("errorCode", location.errorCode)
379
+ map.putString("errorInfo", location.errorInfo)
380
+ if (location.errorCode == AMapLocation.LOCATION_SUCCESS) {
381
+ map.putDouble("accuracy", location.accuracy.toDouble())
382
+ map.putDouble("latitude", location.latitude)
383
+ map.putDouble("longitude", location.longitude)
384
+ map.putDouble("altitude", location.altitude)
385
+ map.putDouble("speed", location.speed.toDouble())
386
+ // 获取方向角(单位:度)
387
+ map.putDouble("heading", location.bearing.toDouble())
388
+ map.putDouble("timestamp", location.time.toDouble())
389
+ if (!location.address.isEmpty()) {
390
+ map.putString("address", location.address)
391
+ map.putString("country", location.country)
392
+ map.putString("province", location.province)
393
+ map.putString("city", location.city)
394
+ map.putString("district", location.district)
395
+ map.putString("cityCode", location.cityCode)
396
+ map.putString("adCode", location.adCode)
397
+ map.putString("street", location.street)
398
+ map.putString("streetNumber", location.streetNum)
399
+ map.putString("poiName", location.poiName)
400
+ map.putString("aoiName", location.aoiName)
401
+ }
402
+
403
+
404
+ // --------------------
405
+ // 以上与 iOS 相同字段
406
+
407
+
408
+ // 获取坐标系类型 高德定位sdk会返回两种坐标系:
409
+ // 坐标系 AMapLocation.COORD_TYPE_GCJ02 -- GCJ02
410
+ // 坐标系 AMapLocation.COORD_TYPE_WGS84 -- WGS84
411
+ // 国外定位时返回的是WGS84坐标系
412
+ map.putString("coordType", location.coordType)
413
+ // 获取位置语义信息
414
+ map.putString("description", location.description)
415
+
416
+ // 返回支持室内定位的建筑物ID信息
417
+ map.putString("buildingId", location.buildingId)
418
+ // 室内外置信度
419
+ // 室内:且置信度取值在[1 ~ 100],值越大在在室内的可能性越大
420
+ // 室外:且置信度取值在[-100 ~ -1] ,值越小在在室内的可能性越大
421
+ // 无法识别室内外:置信度返回值为 0
422
+ map.putInt("conScenario", location.conScenario)
423
+ // 获取室内定位的楼层信息
424
+ map.putString("floor", location.floor)
425
+ // 获取卫星信号强度,仅在卫星定位时有效,值为:
426
+ // #GPS_ACCURACY_BAD,#GPS_ACCURACY_GOOD,#GPS_ACCURACY_UNKNOWN
427
+ map.putInt("gpsAccuracyStatus", location.gpsAccuracyStatus)
428
+ // 获取定位信息描述
429
+ map.putString("locationDetail", location.locationDetail)
430
+
431
+ map.putInt("locationType", location.locationType)
432
+ map.putString("provider", location.provider)
433
+ map.putInt("satellites", location.satellites)
434
+ map.putInt("trustedLevel", location.trustedLevel)
435
+
436
+
437
+ val qualityReportMap = Arguments.createMap()
438
+ // 获取定位质量
439
+ val aMapLocationQualityReport = location.locationQualityReport
440
+ var adviseMessage = aMapLocationQualityReport.adviseMessage
441
+ if (adviseMessage != null) {
442
+ adviseMessage = adviseMessage.replace("[\\t\\n\\r/]".toRegex(), "")
443
+ }
444
+ qualityReportMap.putString("adviseMessage", adviseMessage)
445
+ qualityReportMap.putInt("gpsSatellites", aMapLocationQualityReport.gpsSatellites)
446
+ qualityReportMap.putInt("gpsStatus", aMapLocationQualityReport.gpsStatus)
447
+ qualityReportMap.putDouble(
448
+ "netUseTime",
449
+ aMapLocationQualityReport.netUseTime.toDouble()
450
+ )
451
+ qualityReportMap.putString("networkType", aMapLocationQualityReport.networkType)
452
+ qualityReportMap.putBoolean(
453
+ "isInstalledHighDangerMockApp",
454
+ aMapLocationQualityReport.isInstalledHighDangerMockApp
455
+ )
456
+ qualityReportMap.putBoolean("isWifiAble", aMapLocationQualityReport.isWifiAble)
457
+ map.putMap("locationQualityReport", qualityReportMap)
458
+ } else if (location.errorCode == AMapLocation.ERROR_CODE_FAILURE_LOCATION_PERMISSION) {
459
+ val qualityReportMap = Arguments.createMap()
460
+ // 获取定位质量
461
+ val aMapLocationQualityReport = location.locationQualityReport
462
+ qualityReportMap.putInt("gpsStatus", aMapLocationQualityReport.gpsStatus)
463
+ qualityReportMap.putString("getAdviseMessage", aMapLocationQualityReport.adviseMessage)
464
+ map.putMap("locationQualityReport", qualityReportMap)
465
+ }
466
+ return map
467
+ }
468
+ }
@@ -0,0 +1,31 @@
1
+ package qiuxiang.amap3d.modules
2
+
3
+ import com.amap.api.location.AMapLocationClient
4
+ import com.amap.api.maps.MapsInitializer
5
+ import com.facebook.react.bridge.Promise
6
+ import com.facebook.react.bridge.ReactApplicationContext
7
+ import com.facebook.react.bridge.ReactContextBaseJavaModule
8
+ import com.facebook.react.bridge.ReactMethod
9
+
10
+ @Suppress("unused")
11
+ class SdkModule(val context: ReactApplicationContext) : ReactContextBaseJavaModule() {
12
+ override fun getName(): String {
13
+ return "AMapSdk"
14
+ }
15
+
16
+ @ReactMethod
17
+ fun initSDK(apiKey: String?) {
18
+ apiKey?.let {
19
+ MapsInitializer.setApiKey(it)
20
+ MapsInitializer.updatePrivacyAgree(context, true)
21
+ MapsInitializer.updatePrivacyShow(context, true, true)
22
+ AMapLocationClient.updatePrivacyAgree(context, true)
23
+ AMapLocationClient.updatePrivacyShow(context, true, true)
24
+ }
25
+ }
26
+
27
+ @ReactMethod
28
+ fun getVersion(promise: Promise) {
29
+ promise.resolve(MapsInitializer.getVersion())
30
+ }
31
+ }
@@ -0,0 +1,2 @@
1
+ --swiftversion 5.2
2
+ --indent 2
@@ -0,0 +1,4 @@
1
+ #import <React/RCTUIManager.h>
2
+ #import <React/RCTImageLoader.h>
3
+ #import <React/RCTResizeMode.h>
4
+ #import <MAMapKit/MAMapKit.h>
@@ -0,0 +1,11 @@
1
+ #import <React/RCTUIManager.h>
2
+
3
+ @interface RCT_EXTERN_MODULE(AMapCircleManager, RCTViewManager)
4
+
5
+ RCT_REMAP_VIEW_PROPERTY(center, circleCenter, CLLocationCoordinate2D)
6
+ RCT_EXPORT_VIEW_PROPERTY(radius, double)
7
+ RCT_EXPORT_VIEW_PROPERTY(strokeWidth, double)
8
+ RCT_EXPORT_VIEW_PROPERTY(strokeColor, UIColor)
9
+ RCT_EXPORT_VIEW_PROPERTY(fillColor, UIColor)
10
+
11
+ @end
@@ -0,0 +1,30 @@
1
+ @objc(AMapCircleManager)
2
+ class AMapCircleManager: RCTViewManager {
3
+ override class func requiresMainQueueSetup() -> Bool { false }
4
+ override func view() -> UIView { Circle() }
5
+ }
6
+
7
+ class Circle: UIView, Overlay {
8
+ var overlay = MACircle()
9
+ var renderer: MACircleRenderer?
10
+
11
+ @objc var radius = 0.0 { didSet { overlay.radius = radius } }
12
+ @objc var strokeWidth = 1.0 { didSet { renderer?.lineWidth = strokeWidth } }
13
+ @objc var strokeColor = UIColor.black { didSet { renderer?.strokeColor = strokeColor } }
14
+ @objc var fillColor = UIColor.white { didSet { renderer?.fillColor = fillColor } }
15
+
16
+ @objc func setCircleCenter(_ center: CLLocationCoordinate2D) {
17
+ overlay.coordinate = center
18
+ }
19
+
20
+ func getOverlay() -> MABaseOverlay { overlay }
21
+ func getRenderer() -> MAOverlayRenderer {
22
+ if renderer == nil {
23
+ renderer = MACircleRenderer(circle: overlay)
24
+ renderer?.fillColor = fillColor
25
+ renderer?.strokeColor = strokeColor
26
+ renderer?.lineWidth = strokeWidth
27
+ }
28
+ return renderer!
29
+ }
30
+ }
@@ -0,0 +1,9 @@
1
+ #import <React/RCTUIManager.h>
2
+
3
+ @interface RCT_EXTERN_MODULE(AMapHeatMapManager, RCTViewManager)
4
+
5
+ RCT_EXPORT_VIEW_PROPERTY(data, NSArray)
6
+ RCT_EXPORT_VIEW_PROPERTY(radius, int)
7
+ RCT_EXPORT_VIEW_PROPERTY(opacity, double)
8
+
9
+ @end
@@ -0,0 +1,29 @@
1
+ @objc(AMapHeatMapManager)
2
+ class AMapHeatMapManager: RCTViewManager {
3
+ override class func requiresMainQueueSetup() -> Bool { false }
4
+ override func view() -> UIView { HeatMap() }
5
+ }
6
+
7
+ class HeatMap: UIView, Overlay {
8
+ var overlay = MAHeatMapTileOverlay()
9
+ var renderer: MATileOverlayRenderer?
10
+
11
+ func getOverlay() -> MABaseOverlay { overlay }
12
+ func getRenderer() -> MAOverlayRenderer {
13
+ if renderer == nil {
14
+ renderer = MATileOverlayRenderer(tileOverlay: overlay)
15
+ }
16
+ return renderer!
17
+ }
18
+
19
+ @objc func setRadius(_ radius: Int) { overlay.radius = radius }
20
+ @objc func setOpacity(_ opacity: Double) { overlay.opacity = opacity }
21
+ @objc func setData(_ data: NSArray) {
22
+ overlay.data = data.map { it -> MAHeatMapNode in
23
+ let item = MAHeatMapNode()
24
+ item.coordinate = (it as! NSDictionary).coordinate
25
+ item.intensity = 1
26
+ return item
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,35 @@
1
+ #import <React/RCTUIManager.h>
2
+
3
+ @interface RCT_EXTERN_MODULE(AMapViewManager, RCTViewManager)
4
+
5
+ RCT_EXPORT_VIEW_PROPERTY(mapType, MAMapType)
6
+ RCT_EXPORT_VIEW_PROPERTY(initialCameraPosition, NSDictionary)
7
+ RCT_EXPORT_VIEW_PROPERTY(distanceFilter, double)
8
+ RCT_EXPORT_VIEW_PROPERTY(headingFilter, double)
9
+
10
+ RCT_REMAP_VIEW_PROPERTY(myLocationEnabled, showsUserLocation, BOOL)
11
+ RCT_REMAP_VIEW_PROPERTY(buildingsEnabled, showsBuildings, BOOL)
12
+ RCT_REMAP_VIEW_PROPERTY(trafficEnabled, showTraffic, BOOL)
13
+ RCT_REMAP_VIEW_PROPERTY(indoorViewEnabled, showsIndoorMap, BOOL)
14
+ RCT_REMAP_VIEW_PROPERTY(compassEnabled, showsCompass, BOOL)
15
+ RCT_REMAP_VIEW_PROPERTY(scaleControlsEnabled, showsScale, BOOL)
16
+ RCT_REMAP_VIEW_PROPERTY(scrollGesturesEnabled, scrollEnabled, BOOL)
17
+ RCT_REMAP_VIEW_PROPERTY(zoomGesturesEnabled, zoomEnabled, BOOL)
18
+ RCT_REMAP_VIEW_PROPERTY(rotateGesturesEnabled, rotateEnabled, BOOL)
19
+ RCT_REMAP_VIEW_PROPERTY(tiltGesturesEnabled, rotateCameraEnabled, BOOL)
20
+ RCT_REMAP_VIEW_PROPERTY(minZoom, minZoomLevel, double)
21
+ RCT_REMAP_VIEW_PROPERTY(maxZoom, maxZoomLevel, double)
22
+
23
+ RCT_EXPORT_VIEW_PROPERTY(onPress, RCTBubblingEventBlock)
24
+ RCT_EXPORT_VIEW_PROPERTY(onPressPoi, RCTBubblingEventBlock)
25
+ RCT_EXPORT_VIEW_PROPERTY(onLongPress, RCTBubblingEventBlock)
26
+ RCT_EXPORT_VIEW_PROPERTY(onCameraIdle, RCTBubblingEventBlock)
27
+ RCT_EXPORT_VIEW_PROPERTY(onCameraMove, RCTBubblingEventBlock)
28
+ RCT_EXPORT_VIEW_PROPERTY(onLoad, RCTDirectEventBlock)
29
+ RCT_EXPORT_VIEW_PROPERTY(onLocation, RCTBubblingEventBlock)
30
+ RCT_EXPORT_VIEW_PROPERTY(onCallback, RCTBubblingEventBlock)
31
+
32
+ RCT_EXTERN_METHOD(moveCamera:(nonnull NSNumber *)reactTag position:(NSDictionary *)_ duration:(int)_)
33
+ RCT_EXTERN_METHOD(call:(nonnull NSNumber *)reactTag callerId:(double)_ name:(NSString *)_ args:(NSDictionary *)_)
34
+ RCT_EXTERN_METHOD(moveToCurrentLocation:(nonnull NSNumber *)reactTag)
35
+ @end