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.
- package/ExpoSmartrefreshlayoutModule.swift +119 -0
- package/README.md +35 -496
- package/android/src/main/java/expo/modules/gaodemap/ExpoGaodeMapModule.kt +7 -8
- package/android/src/main/java/expo/modules/gaodemap/ExpoGaodeMapView.kt +9 -1
- package/android/src/main/java/expo/modules/gaodemap/managers/CameraManager.kt +14 -0
- package/android/src/main/java/expo/modules/gaodemap/managers/OverlayManager.kt +11 -45
- package/android/src/main/java/expo/modules/gaodemap/managers/UIManager.kt +111 -9
- package/android/src/main/java/expo/modules/gaodemap/utils/ColorParser.kt +48 -0
- package/build/components/overlays/Polyline.d.ts.map +1 -1
- package/build/components/overlays/Polyline.js +10 -17
- package/build/components/overlays/Polyline.js.map +1 -1
- package/build/index.d.ts +1 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +2 -2
- package/build/index.js.map +1 -1
- package/build/modules/AMapSDK.d.ts +0 -6
- package/build/modules/AMapSDK.d.ts.map +1 -1
- package/build/modules/AMapSDK.js +2 -11
- package/build/modules/AMapSDK.js.map +1 -1
- package/build/types/map-view.types.d.ts +27 -5
- package/build/types/map-view.types.d.ts.map +1 -1
- package/build/types/map-view.types.js.map +1 -1
- package/docs/API.md +248 -0
- package/docs/EXAMPLES.md +479 -0
- package/ios/ColorParser.swift +158 -0
- package/ios/ExpoGaodeMap.podspec +1 -0
- package/ios/ExpoGaodeMapModule.swift +445 -42
- package/ios/ExpoGaodeMapView.swift +278 -32
- package/ios/UIColorExtension.swift +11 -0
- package/ios/managers/CameraManager.swift +107 -0
- package/ios/managers/OverlayManager.swift +210 -0
- package/ios/managers/UIManager.swift +163 -0
- package/ios/modules/LocationManager.swift +144 -0
- package/ios/overlays/CircleView.swift +76 -0
- package/ios/overlays/ClusterView.swift +56 -0
- package/ios/overlays/HeatMapView.swift +98 -0
- package/ios/overlays/MarkerView.swift +81 -0
- package/ios/overlays/MultiPointView.swift +50 -0
- package/ios/overlays/PolygonView.swift +70 -0
- package/ios/overlays/PolylineView.swift +62 -0
- package/lib/android/.gradle/8.9/checksums/checksums.lock +0 -0
- package/lib/android/.gradle/8.9/dependencies-accessors/gc.properties +0 -0
- package/lib/android/.gradle/8.9/fileChanges/last-build.bin +0 -0
- package/lib/android/.gradle/8.9/fileHashes/fileHashes.lock +0 -0
- package/lib/android/.gradle/8.9/gc.properties +0 -0
- package/lib/android/.gradle/buildOutputCleanup/buildOutputCleanup.lock +0 -0
- package/lib/android/.gradle/buildOutputCleanup/cache.properties +2 -0
- package/lib/android/.gradle/vcs-1/gc.properties +0 -0
- package/lib/android/build/.transforms/7df4812a1bb640a0eb92904b45f433ca/results.bin +1 -0
- package/lib/android/build/.transforms/7df4812a1bb640a0eb92904b45f433ca/transformed/classes/classes_dex/classes.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/results.bin +1 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/AMap3DPackage.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/BuildConfig.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/UtilsKt$fetchImage$request$1$1.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/UtilsKt.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Circle.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/CircleManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/HeatMap.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/HeatMapManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView$7.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView$8.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView$animateCallback$1.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapView.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapViewManager$commands$1.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapViewManager$commands$2.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MapViewManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Marker$setIcon$1.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Marker.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MarkerManager$Companion.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MarkerManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MultiPoint$setIcon$1.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MultiPoint.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/MultiPointManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Overlay.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Polygon.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/PolygonManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/Polyline.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/map_view/PolylineManager.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/debug_dex/qiuxiang/amap3d/modules/SdkModule.dex +0 -0
- package/lib/android/build/.transforms/d6c91342f3c8bae4ed26783459def84b/transformed/debug/desugar_graph.bin +0 -0
- package/lib/android/build/generated/source/buildConfig/debug/qiuxiang/amap3d/BuildConfig.java +10 -0
- package/lib/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml +14 -0
- package/lib/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json +18 -0
- package/lib/android/build/intermediates/aar_metadata/debug/aar-metadata.properties +6 -0
- package/lib/android/build/intermediates/annotation_processor_list/debug/annotationProcessors.json +1 -0
- package/lib/android/build/intermediates/compile_library_classes_jar/debug/classes.jar +0 -0
- package/lib/android/build/intermediates/compile_r_class_jar/debug/R.jar +0 -0
- package/lib/android/build/intermediates/compile_symbol_list/debug/R.txt +1 -0
- package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-hdpi-v4_positio_icon.png.flat +0 -0
- package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-mdpi-v4_positio_icon.png.flat +0 -0
- package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-xhdpi-v4_positio_icon.png.flat +0 -0
- package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-xxhdpi-v4_positio_icon.png.flat +0 -0
- package/lib/android/build/intermediates/compiled_local_resources/debug/out/drawable-xxxhdpi-v4_positio_icon.png.flat +0 -0
- package/lib/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +6 -0
- package/lib/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
- package/lib/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
- package/lib/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
- package/lib/android/build/intermediates/incremental/packageDebugAssets/merger.xml +2 -0
- package/lib/android/build/intermediates/java_res/debug/out/META-INF/react-native-amap3d_debug.kotlin_module +0 -0
- package/lib/android/build/intermediates/javac/debug/classes/qiuxiang/amap3d/BuildConfig.class +0 -0
- package/lib/android/build/intermediates/local_only_symbol_list/debug/R-def.txt +3 -0
- package/lib/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt +26 -0
- package/lib/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml +14 -0
- package/lib/android/build/intermediates/navigation_json/debug/navigation.json +1 -0
- package/lib/android/build/intermediates/packaged_res/debug/drawable-hdpi-v4/positio_icon.png +0 -0
- package/lib/android/build/intermediates/packaged_res/debug/drawable-mdpi-v4/positio_icon.png +0 -0
- package/lib/android/build/intermediates/packaged_res/debug/drawable-xhdpi-v4/positio_icon.png +0 -0
- package/lib/android/build/intermediates/packaged_res/debug/drawable-xxhdpi-v4/positio_icon.png +0 -0
- package/lib/android/build/intermediates/packaged_res/debug/drawable-xxxhdpi-v4/positio_icon.png +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/META-INF/react-native-amap3d_debug.kotlin_module +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/AMap3DPackage.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/BuildConfig.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/UtilsKt$fetchImage$request$1$1.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/UtilsKt.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Circle.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/CircleManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/HeatMap.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/HeatMapManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView$7.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView$8.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView$animateCallback$1.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapView.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$1.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$2.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MapViewManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Marker$setIcon$1.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Marker.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MarkerManager$Companion.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MarkerManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MultiPoint$setIcon$1.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MultiPoint.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/MultiPointManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Overlay.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Polygon.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/PolygonManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/Polyline.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/map_view/PolylineManager.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_dir/debug/qiuxiang/amap3d/modules/SdkModule.class +0 -0
- package/lib/android/build/intermediates/runtime_library_classes_jar/debug/classes.jar +0 -0
- package/lib/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt +2 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/inputs/source-to-output.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-attributes.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/class-fq-name-to-source.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/constants.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/internal-name-to-source.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/package-parts.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/proto.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/source-to-classes.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/subtypes.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/jvm/kotlin/supertypes.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/counters.tab +2 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/file-to-id.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/id-to-file.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.keystream.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.at +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab.values.s +1 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/caches-jvm/lookups/lookups.tab_i.len +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/cacheable/last-build.bin +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/classpath-snapshot/shrunk-classpath-snapshot.bin +0 -0
- package/lib/android/build/kotlin/compileDebugKotlin/local-state/build-history.bin +0 -0
- package/lib/android/build/outputs/logs/manifest-merger-debug-report.txt +41 -0
- package/lib/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/META-INF/react-native-amap3d_debug.kotlin_module +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/AMap3DPackage.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/UtilsKt$fetchImage$request$1$1.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/UtilsKt.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Circle.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/CircleManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/HeatMap.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/HeatMapManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView$7.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView$8.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView$animateCallback$1.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapView.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$1.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapViewManager$commands$2.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MapViewManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Marker$setIcon$1.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Marker.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MarkerManager$Companion.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MarkerManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MultiPoint$setIcon$1.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MultiPoint.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/MultiPointManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Overlay.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Polygon.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/PolygonManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/Polyline.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/map_view/PolylineManager.class +0 -0
- package/lib/android/build/tmp/kotlin-classes/debug/qiuxiang/amap3d/modules/SdkModule.class +0 -0
- package/lib/android/build.gradle +34 -0
- package/lib/android/drawable/rn_edit_text_material.xml +37 -0
- package/lib/android/drawable-hdpi/positio_icon.png +0 -0
- package/lib/android/drawable-hdpi/splashscreen_image.png +0 -0
- package/lib/android/drawable-mdpi/splashscreen_image.png +0 -0
- package/lib/android/drawable-xhdpi/splashscreen_image.png +0 -0
- package/lib/android/drawable-xxhdpi/splashscreen_image.png +0 -0
- package/lib/android/drawable-xxxhdpi/splashscreen_image.png +0 -0
- package/lib/android/src/main/AndroidManifest.xml +10 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/AMap3DPackage.kt +30 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/Utils.kt +114 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Circle.kt +65 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/CircleManager.kt +49 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/HeatMap.kt +32 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/HeatMapManager.kt +33 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MapView.kt +190 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MapViewManager.kt +181 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Marker.kt +102 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MarkerManager.kt +78 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MultiPoint.kt +53 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/MultiPointManager.kt +33 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Overlay.kt +8 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Polygon.kt +58 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/PolygonManager.kt +44 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/Polyline.kt +69 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/map_view/PolylineManager.kt +64 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/modules/AMapGeolocationModule.kt +468 -0
- package/lib/android/src/main/java/qiuxiang/amap3d/modules/SdkModule.kt +31 -0
- package/lib/android/src/main/res/drawable-hdpi/positio_icon.png +0 -0
- package/lib/android/src/main/res/drawable-mdpi/positio_icon.png +0 -0
- package/lib/android/src/main/res/drawable-xhdpi/positio_icon.png +0 -0
- package/lib/android/src/main/res/drawable-xxhdpi/positio_icon.png +0 -0
- package/lib/android/src/main/res/drawable-xxxhdpi/positio_icon.png +0 -0
- package/lib/ios/.swiftformat +2 -0
- package/lib/ios/Bridging-Header.h +4 -0
- package/lib/ios/MapView/CircleManager.m +11 -0
- package/lib/ios/MapView/CircleManager.swift +30 -0
- package/lib/ios/MapView/HeatMapManager.m +9 -0
- package/lib/ios/MapView/HeatMapManager.swift +29 -0
- package/lib/ios/MapView/MapViewManager.m +35 -0
- package/lib/ios/MapView/MapViewManager.swift +188 -0
- package/lib/ios/MapView/MarkerManager.m +18 -0
- package/lib/ios/MapView/MarkerManager.swift +100 -0
- package/lib/ios/MapView/MultiPointManager.m +9 -0
- package/lib/ios/MapView/MultiPointManager.swift +47 -0
- package/lib/ios/MapView/Overlay.swift +4 -0
- package/lib/ios/MapView/PolygonManager.m +10 -0
- package/lib/ios/MapView/PolygonManager.swift +30 -0
- package/lib/ios/MapView/PolylineManager.m +12 -0
- package/lib/ios/MapView/PolylineManager.swift +41 -0
- package/lib/ios/Modules/SdkModule.m +8 -0
- package/lib/ios/Modules/SdkModule.swift +16 -0
- package/lib/ios/RNAMapGeolocation.h +8 -0
- package/lib/ios/RNAMapGeolocation.m +302 -0
- package/lib/ios/Utils.swift +104 -0
- package/lib/ios/react-native-amap3d.podspec +21 -0
- package/lib/src/circle.tsx +36 -0
- package/lib/src/cluster/cluster-view.tsx +58 -0
- package/lib/src/cluster/index.tsx +159 -0
- package/lib/src/component.ts +31 -0
- package/lib/src/geolocation/index.d.ts +287 -0
- package/lib/src/geolocation/index.js +344 -0
- package/lib/src/heat-map.tsx +21 -0
- package/lib/src/index.ts +13 -0
- package/lib/src/location/index.d.ts +287 -0
- package/lib/src/location/index.js +344 -0
- package/lib/src/map-view.tsx +230 -0
- package/lib/src/marker.tsx +128 -0
- package/lib/src/multi-point.tsx +28 -0
- package/lib/src/polygon.tsx +31 -0
- package/lib/src/polyline.tsx +65 -0
- package/lib/src/sdk.ts +11 -0
- package/lib/src/types.ts +137 -0
- package/package.json +2 -2
- package/src/components/overlays/Polyline.tsx +11 -19
- package/src/index.ts +2 -2
- package/src/modules/AMapSDK.ts +2 -12
- package/src/types/map-view.types.ts +27 -5
- package/docs/followUserLocation.md +0 -186
- package/src/types/README.md +0 -186
|
@@ -33,14 +33,6 @@ class ExpoGaodeMapModule : Module() {
|
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
/**
|
|
37
|
-
* 设置 API Key(地图 + 定位)
|
|
38
|
-
*/
|
|
39
|
-
Function("setApiKey") { key: String ->
|
|
40
|
-
SDKInitializer.initSDK(appContext.reactContext!!, key)
|
|
41
|
-
getLocationManager()
|
|
42
|
-
}
|
|
43
|
-
|
|
44
36
|
/**
|
|
45
37
|
* 获取 SDK 版本
|
|
46
38
|
*/
|
|
@@ -201,10 +193,17 @@ class ExpoGaodeMapModule : Module() {
|
|
|
201
193
|
Prop<Boolean>("scrollGesturesEnabled") { view, enabled -> view.setScrollEnabled(enabled) }
|
|
202
194
|
Prop<Boolean>("rotateGesturesEnabled") { view, enabled -> view.setRotateEnabled(enabled) }
|
|
203
195
|
Prop<Boolean>("tiltGesturesEnabled") { view, enabled -> view.setTiltEnabled(enabled) }
|
|
196
|
+
|
|
197
|
+
// 缩放级别限制
|
|
198
|
+
Prop<Float>("maxZoom") { view, maxZoom -> view.setMaxZoom(maxZoom) }
|
|
199
|
+
Prop<Float>("minZoom") { view, minZoom -> view.setMinZoom(minZoom) }
|
|
204
200
|
|
|
205
201
|
// 地图图层
|
|
206
202
|
Prop<Boolean>("myLocationEnabled") { view, show -> view.setShowsUserLocation(show) }
|
|
207
203
|
Prop<Boolean>("followUserLocation") { view, follow -> view.setFollowUserLocation(follow) }
|
|
204
|
+
Prop<Map<String, Any>?>("userLocationRepresentation") { view, representation ->
|
|
205
|
+
representation?.let { view.setUserLocationRepresentation(it) }
|
|
206
|
+
}
|
|
208
207
|
Prop<Boolean>("trafficEnabled") { view, show -> view.setShowsTraffic(show) }
|
|
209
208
|
Prop<Boolean>("buildingsEnabled") { view, show -> view.setShowsBuildings(show) }
|
|
210
209
|
Prop<Boolean>("indoorViewEnabled") { view, show -> view.setShowsIndoorMap(show) }
|
|
@@ -64,7 +64,7 @@ class ExpoGaodeMapView(context: Context, appContext: AppContext) : ExpoView(cont
|
|
|
64
64
|
|
|
65
65
|
// 初始化管理器
|
|
66
66
|
cameraManager = CameraManager(aMap)
|
|
67
|
-
uiManager = UIManager(aMap)
|
|
67
|
+
uiManager = UIManager(aMap, context)
|
|
68
68
|
overlayManager = OverlayManager(aMap)
|
|
69
69
|
Log.d(TAG, "管理器初始化完成")
|
|
70
70
|
|
|
@@ -164,6 +164,9 @@ class ExpoGaodeMapView(context: Context, appContext: AppContext) : ExpoView(cont
|
|
|
164
164
|
fun setRotateEnabled(enabled: Boolean) = uiManager.setRotateEnabled(enabled)
|
|
165
165
|
fun setTiltEnabled(enabled: Boolean) = uiManager.setTiltEnabled(enabled)
|
|
166
166
|
|
|
167
|
+
fun setMaxZoom(maxZoom: Float) = cameraManager.setMaxZoomLevel(maxZoom)
|
|
168
|
+
fun setMinZoom(minZoom: Float) = cameraManager.setMinZoomLevel(minZoom)
|
|
169
|
+
|
|
167
170
|
fun setShowsUserLocation(show: Boolean) = uiManager.setShowsUserLocation(show, followUserLocation)
|
|
168
171
|
|
|
169
172
|
fun setFollowUserLocation(follow: Boolean) {
|
|
@@ -171,6 +174,11 @@ class ExpoGaodeMapView(context: Context, appContext: AppContext) : ExpoView(cont
|
|
|
171
174
|
// 如果定位已开启,立即应用新设置
|
|
172
175
|
uiManager.setShowsUserLocation(true, follow)
|
|
173
176
|
}
|
|
177
|
+
|
|
178
|
+
fun setUserLocationRepresentation(representation: Map<String, Any>) {
|
|
179
|
+
uiManager.setUserLocationRepresentation(representation)
|
|
180
|
+
}
|
|
181
|
+
|
|
174
182
|
fun setShowsTraffic(show: Boolean) = uiManager.setShowsTraffic(show)
|
|
175
183
|
fun setShowsBuildings(show: Boolean) = uiManager.setShowsBuildings(show)
|
|
176
184
|
fun setShowsIndoorMap(show: Boolean) = uiManager.setShowsIndoorMap(show)
|
|
@@ -12,6 +12,20 @@ import com.amap.api.maps.model.LatLng
|
|
|
12
12
|
*/
|
|
13
13
|
class CameraManager(private val aMap: AMap) {
|
|
14
14
|
|
|
15
|
+
/**
|
|
16
|
+
* 设置最大缩放级别
|
|
17
|
+
*/
|
|
18
|
+
fun setMaxZoomLevel(maxZoom: Float) {
|
|
19
|
+
aMap.maxZoomLevel = maxZoom
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* 设置最小缩放级别
|
|
24
|
+
*/
|
|
25
|
+
fun setMinZoomLevel(minZoom: Float) {
|
|
26
|
+
aMap.minZoomLevel = minZoom
|
|
27
|
+
}
|
|
28
|
+
|
|
15
29
|
/**
|
|
16
30
|
* 设置初始相机位置
|
|
17
31
|
*/
|
|
@@ -3,6 +3,7 @@ package expo.modules.gaodemap.managers
|
|
|
3
3
|
import android.util.Log
|
|
4
4
|
import com.amap.api.maps.AMap
|
|
5
5
|
import com.amap.api.maps.model.LatLng
|
|
6
|
+
import expo.modules.gaodemap.utils.ColorParser
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* 覆盖物管理器
|
|
@@ -28,8 +29,8 @@ class OverlayManager(private val aMap: AMap) {
|
|
|
28
29
|
@Suppress("UNCHECKED_CAST")
|
|
29
30
|
val center = props["center"] as? Map<String, Double>
|
|
30
31
|
val radius = (props["radius"] as? Number)?.toDouble() ?: 1000.0
|
|
31
|
-
val fillColor = (props["fillColor"]
|
|
32
|
-
val strokeColor = (props["strokeColor"]
|
|
32
|
+
val fillColor = ColorParser.parseColor(props["fillColor"])
|
|
33
|
+
val strokeColor = ColorParser.parseColor(props["strokeColor"])
|
|
33
34
|
val strokeWidth = (props["strokeWidth"] as? Number)?.toFloat() ?: 10f
|
|
34
35
|
|
|
35
36
|
if (center != null) {
|
|
@@ -63,8 +64,8 @@ class OverlayManager(private val aMap: AMap) {
|
|
|
63
64
|
@Suppress("UNCHECKED_CAST")
|
|
64
65
|
val center = props["center"] as? Map<String, Double>
|
|
65
66
|
val radius = (props["radius"] as? Number)?.toDouble()
|
|
66
|
-
val fillColor =
|
|
67
|
-
val strokeColor =
|
|
67
|
+
val fillColor = props["fillColor"]?.let { ColorParser.parseColor(it) }
|
|
68
|
+
val strokeColor = props["strokeColor"]?.let { ColorParser.parseColor(it) }
|
|
68
69
|
val strokeWidth = (props["strokeWidth"] as? Number)?.toFloat()
|
|
69
70
|
|
|
70
71
|
center?.let {
|
|
@@ -150,14 +151,7 @@ class OverlayManager(private val aMap: AMap) {
|
|
|
150
151
|
@Suppress("UNCHECKED_CAST")
|
|
151
152
|
val points = props["points"] as? List<Map<String, Double>>
|
|
152
153
|
val width = (props["width"] as? Number)?.toFloat() ?: 10f
|
|
153
|
-
|
|
154
|
-
val colorValue = props["color"]
|
|
155
|
-
val color = when (colorValue) {
|
|
156
|
-
is Long -> colorValue.toInt()
|
|
157
|
-
is Int -> colorValue
|
|
158
|
-
is Double -> colorValue.toInt()
|
|
159
|
-
else -> android.graphics.Color.RED
|
|
160
|
-
}
|
|
154
|
+
val color = ColorParser.parseColor(props["color"])
|
|
161
155
|
|
|
162
156
|
if (points != null && points.isNotEmpty()) {
|
|
163
157
|
val latLngs = points.map { point ->
|
|
@@ -190,7 +184,7 @@ class OverlayManager(private val aMap: AMap) {
|
|
|
190
184
|
@Suppress("UNCHECKED_CAST")
|
|
191
185
|
val points = props["points"] as? List<Map<String, Double>>
|
|
192
186
|
val width = (props["width"] as? Number)?.toFloat()
|
|
193
|
-
val color =
|
|
187
|
+
val color = props["color"]?.let { ColorParser.parseColor(it) }
|
|
194
188
|
|
|
195
189
|
points?.let {
|
|
196
190
|
val latLngs = it.map { point ->
|
|
@@ -215,22 +209,8 @@ class OverlayManager(private val aMap: AMap) {
|
|
|
215
209
|
|
|
216
210
|
@Suppress("UNCHECKED_CAST")
|
|
217
211
|
val points = props["points"] as? List<Map<String, Double>>
|
|
218
|
-
|
|
219
|
-
val
|
|
220
|
-
val fillColor = when (fillColorValue) {
|
|
221
|
-
is Long -> fillColorValue.toInt()
|
|
222
|
-
is Int -> fillColorValue
|
|
223
|
-
is Double -> fillColorValue.toInt()
|
|
224
|
-
else -> android.graphics.Color.argb(50, 0, 0, 255)
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
val strokeColorValue = props["strokeColor"]
|
|
228
|
-
val strokeColor = when (strokeColorValue) {
|
|
229
|
-
is Long -> strokeColorValue.toInt()
|
|
230
|
-
is Int -> strokeColorValue
|
|
231
|
-
is Double -> strokeColorValue.toInt()
|
|
232
|
-
else -> android.graphics.Color.BLUE
|
|
233
|
-
}
|
|
212
|
+
val fillColor = ColorParser.parseColor(props["fillColor"])
|
|
213
|
+
val strokeColor = ColorParser.parseColor(props["strokeColor"])
|
|
234
214
|
|
|
235
215
|
val strokeWidth = (props["strokeWidth"] as? Number)?.toFloat() ?: 10f
|
|
236
216
|
val zIndex = (props["zIndex"] as? Number)?.toFloat() ?: 0f
|
|
@@ -267,22 +247,8 @@ class OverlayManager(private val aMap: AMap) {
|
|
|
267
247
|
polygons[id]?.let { polygon ->
|
|
268
248
|
@Suppress("UNCHECKED_CAST")
|
|
269
249
|
val points = props["points"] as? List<Map<String, Double>>
|
|
270
|
-
|
|
271
|
-
val
|
|
272
|
-
val fillColor = when (fillColorValue) {
|
|
273
|
-
is Long -> fillColorValue.toInt()
|
|
274
|
-
is Int -> fillColorValue
|
|
275
|
-
is Double -> fillColorValue.toInt()
|
|
276
|
-
else -> null
|
|
277
|
-
}
|
|
278
|
-
|
|
279
|
-
val strokeColorValue = props["strokeColor"]
|
|
280
|
-
val strokeColor = when (strokeColorValue) {
|
|
281
|
-
is Long -> strokeColorValue.toInt()
|
|
282
|
-
is Int -> strokeColorValue
|
|
283
|
-
is Double -> strokeColorValue.toInt()
|
|
284
|
-
else -> null
|
|
285
|
-
}
|
|
250
|
+
val fillColor = props["fillColor"]?.let { ColorParser.parseColor(it) }
|
|
251
|
+
val strokeColor = props["strokeColor"]?.let { ColorParser.parseColor(it) }
|
|
286
252
|
|
|
287
253
|
val strokeWidth = (props["strokeWidth"] as? Number)?.toFloat()
|
|
288
254
|
val zIndex = (props["zIndex"] as? Number)?.toFloat()
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
package expo.modules.gaodemap.managers
|
|
2
2
|
|
|
3
|
+
import android.content.Context
|
|
4
|
+
import android.graphics.BitmapFactory
|
|
3
5
|
import com.amap.api.maps.AMap
|
|
6
|
+
import com.amap.api.maps.model.BitmapDescriptorFactory
|
|
4
7
|
import com.amap.api.maps.model.MyLocationStyle
|
|
8
|
+
import expo.modules.gaodemap.utils.ColorParser
|
|
9
|
+
import java.io.File
|
|
10
|
+
import java.net.URL
|
|
5
11
|
|
|
6
12
|
/**
|
|
7
13
|
* UI 和手势管理器
|
|
8
14
|
* 负责地图控件显示、手势控制、图层显示等
|
|
9
15
|
*/
|
|
10
|
-
class UIManager(private val aMap: AMap) {
|
|
16
|
+
class UIManager(private val aMap: AMap, private val context: Context) {
|
|
11
17
|
|
|
12
18
|
// ==================== 控件显示 ====================
|
|
13
19
|
|
|
@@ -64,28 +70,124 @@ class UIManager(private val aMap: AMap) {
|
|
|
64
70
|
|
|
65
71
|
// ==================== 图层显示 ====================
|
|
66
72
|
|
|
73
|
+
private var currentLocationStyle: MyLocationStyle? = null
|
|
74
|
+
|
|
67
75
|
/**
|
|
68
76
|
* 设置是否显示用户位置
|
|
69
|
-
* @param show 是否显示
|
|
70
|
-
* @param followUserLocation 是否跟随用户位置(默认 false,只显示不移动地图)
|
|
71
77
|
*/
|
|
72
78
|
fun setShowsUserLocation(show: Boolean, followUserLocation: Boolean = false) {
|
|
73
79
|
if (show) {
|
|
74
|
-
|
|
75
|
-
|
|
80
|
+
if (currentLocationStyle == null) {
|
|
81
|
+
currentLocationStyle = MyLocationStyle()
|
|
82
|
+
}
|
|
76
83
|
val locationType = if (followUserLocation) {
|
|
77
|
-
MyLocationStyle.LOCATION_TYPE_FOLLOW
|
|
84
|
+
MyLocationStyle.LOCATION_TYPE_FOLLOW
|
|
78
85
|
} else {
|
|
79
|
-
MyLocationStyle.LOCATION_TYPE_SHOW
|
|
86
|
+
MyLocationStyle.LOCATION_TYPE_SHOW
|
|
80
87
|
}
|
|
81
|
-
|
|
82
|
-
aMap.myLocationStyle =
|
|
88
|
+
currentLocationStyle?.myLocationType(locationType)
|
|
89
|
+
aMap.myLocationStyle = currentLocationStyle
|
|
83
90
|
aMap.isMyLocationEnabled = true
|
|
84
91
|
} else {
|
|
85
92
|
aMap.isMyLocationEnabled = false
|
|
86
93
|
}
|
|
87
94
|
}
|
|
88
95
|
|
|
96
|
+
/**
|
|
97
|
+
* 设置用户位置样式
|
|
98
|
+
* 统一 iOS 和 Android 的 API
|
|
99
|
+
*/
|
|
100
|
+
fun setUserLocationRepresentation(config: Map<String, Any>) {
|
|
101
|
+
if (currentLocationStyle == null) {
|
|
102
|
+
currentLocationStyle = MyLocationStyle()
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
val style = currentLocationStyle!!
|
|
106
|
+
|
|
107
|
+
// 精度圈边线颜色 (strokeColor)
|
|
108
|
+
config["strokeColor"]?.let {
|
|
109
|
+
style.strokeColor(ColorParser.parseColor(it))
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// 精度圈填充颜色 (fillColor)
|
|
113
|
+
config["fillColor"]?.let {
|
|
114
|
+
style.radiusFillColor(ColorParser.parseColor(it))
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
// 精度圈边线宽度 (lineWidth)
|
|
118
|
+
(config["lineWidth"] as? Number)?.let {
|
|
119
|
+
style.strokeWidth(it.toFloat())
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
// 是否显示精度圈 (showsAccuracyRing)
|
|
123
|
+
(config["showsAccuracyRing"] as? Boolean)?.let {
|
|
124
|
+
style.showMyLocation(it)
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
// 自定义图标 (image)
|
|
128
|
+
(config["image"] as? String)?.let { imagePath ->
|
|
129
|
+
android.util.Log.d("UIManager", "设置定位图标: $imagePath")
|
|
130
|
+
|
|
131
|
+
// 将 dp 转换为 px (与 iOS points 对应)
|
|
132
|
+
val density = context.resources.displayMetrics.density
|
|
133
|
+
val imageWidth = (config["imageWidth"] as? Number)?.let { (it.toFloat() * density).toInt() }
|
|
134
|
+
val imageHeight = (config["imageHeight"] as? Number)?.let { (it.toFloat() * density).toInt() }
|
|
135
|
+
|
|
136
|
+
// 网络图片需要在后台线程加载
|
|
137
|
+
if (imagePath.startsWith("http://") || imagePath.startsWith("https://")) {
|
|
138
|
+
Thread {
|
|
139
|
+
try {
|
|
140
|
+
val originalBitmap = BitmapFactory.decodeStream(URL(imagePath).openStream())
|
|
141
|
+
android.os.Handler(android.os.Looper.getMainLooper()).post {
|
|
142
|
+
originalBitmap?.let { bitmap ->
|
|
143
|
+
val scaledBitmap = if (imageWidth != null && imageHeight != null) {
|
|
144
|
+
android.graphics.Bitmap.createScaledBitmap(bitmap, imageWidth, imageHeight, true)
|
|
145
|
+
} else bitmap
|
|
146
|
+
|
|
147
|
+
android.util.Log.d("UIManager", "网络图片加载成功")
|
|
148
|
+
style.myLocationIcon(BitmapDescriptorFactory.fromBitmap(scaledBitmap))
|
|
149
|
+
aMap.myLocationStyle = style
|
|
150
|
+
} ?: android.util.Log.e("UIManager", "网络图片加载失败")
|
|
151
|
+
}
|
|
152
|
+
} catch (e: Exception) {
|
|
153
|
+
android.util.Log.e("UIManager", "加载网络图片异常", e)
|
|
154
|
+
}
|
|
155
|
+
}.start()
|
|
156
|
+
} else {
|
|
157
|
+
try {
|
|
158
|
+
val originalBitmap = when {
|
|
159
|
+
imagePath.startsWith("file://") -> {
|
|
160
|
+
BitmapFactory.decodeFile(imagePath.substring(7))
|
|
161
|
+
}
|
|
162
|
+
else -> {
|
|
163
|
+
val resId = context.resources.getIdentifier(
|
|
164
|
+
imagePath.substringBeforeLast('.'),
|
|
165
|
+
"drawable",
|
|
166
|
+
context.packageName
|
|
167
|
+
)
|
|
168
|
+
if (resId != 0) {
|
|
169
|
+
BitmapFactory.decodeResource(context.resources, resId)
|
|
170
|
+
} else null
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
originalBitmap?.let { bitmap ->
|
|
175
|
+
val scaledBitmap = if (imageWidth != null && imageHeight != null) {
|
|
176
|
+
android.graphics.Bitmap.createScaledBitmap(bitmap, imageWidth, imageHeight, true)
|
|
177
|
+
} else bitmap
|
|
178
|
+
|
|
179
|
+
android.util.Log.d("UIManager", "本地图片加载成功")
|
|
180
|
+
style.myLocationIcon(BitmapDescriptorFactory.fromBitmap(scaledBitmap))
|
|
181
|
+
} ?: android.util.Log.e("UIManager", "本地图片加载失败")
|
|
182
|
+
} catch (e: Exception) {
|
|
183
|
+
android.util.Log.e("UIManager", "加载本地图片异常", e)
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
|
|
188
|
+
aMap.myLocationStyle = style
|
|
189
|
+
}
|
|
190
|
+
|
|
89
191
|
/**
|
|
90
192
|
* 设置是否显示交通路况
|
|
91
193
|
*/
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
package expo.modules.gaodemap.utils
|
|
2
|
+
|
|
3
|
+
import android.graphics.Color
|
|
4
|
+
|
|
5
|
+
object ColorParser {
|
|
6
|
+
/**
|
|
7
|
+
* 解析颜色值
|
|
8
|
+
* 支持格式:
|
|
9
|
+
* - 字符串: "#AARRGGBB", "#RRGGBB", "red", "blue" 等
|
|
10
|
+
* - 数字: Int (ARGB)
|
|
11
|
+
*/
|
|
12
|
+
fun parseColor(value: Any?): Int {
|
|
13
|
+
return when (value) {
|
|
14
|
+
is String -> parseColorString(value)
|
|
15
|
+
is Int -> value
|
|
16
|
+
is Long -> value.toInt()
|
|
17
|
+
is Double -> value.toInt()
|
|
18
|
+
else -> Color.BLACK
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
private fun parseColorString(color: String): Int {
|
|
23
|
+
return try {
|
|
24
|
+
when {
|
|
25
|
+
color.startsWith("#") -> Color.parseColor(color)
|
|
26
|
+
else -> getNamedColor(color)
|
|
27
|
+
}
|
|
28
|
+
} catch (e: Exception) {
|
|
29
|
+
Color.BLACK
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
private fun getNamedColor(name: String): Int {
|
|
34
|
+
return when (name.lowercase()) {
|
|
35
|
+
"red" -> Color.RED
|
|
36
|
+
"blue" -> Color.BLUE
|
|
37
|
+
"green" -> Color.GREEN
|
|
38
|
+
"yellow" -> Color.YELLOW
|
|
39
|
+
"black" -> Color.BLACK
|
|
40
|
+
"white" -> Color.WHITE
|
|
41
|
+
"gray", "grey" -> Color.GRAY
|
|
42
|
+
"cyan" -> Color.CYAN
|
|
43
|
+
"magenta" -> Color.MAGENTA
|
|
44
|
+
"transparent" -> Color.TRANSPARENT
|
|
45
|
+
else -> Color.BLACK
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Polyline.d.ts","sourceRoot":"","sources":["../../../src/components/overlays/Polyline.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"Polyline.d.ts","sourceRoot":"","sources":["../../../src/components/overlays/Polyline.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAK,EAAE,aAAa,QA4BpD"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author : 尚博信_王强 wangqiang03@sunboxsoft.com
|
|
3
3
|
* @Date : 2025-11-13 15:01:30
|
|
4
4
|
* @LastEditors : 尚博信_王强 wangqiang03@sunboxsoft.com
|
|
5
|
-
* @LastEditTime : 2025-11-
|
|
5
|
+
* @LastEditTime : 2025-11-14 15:48:14
|
|
6
6
|
* @FilePath : /expo-gaode-map/src/components/overlays/Polyline.tsx
|
|
7
7
|
* @Description : 地图折线组件 - 使用命令式 API
|
|
8
8
|
*
|
|
@@ -30,30 +30,23 @@ import { MapContext } from '../../ExpoGaodeMapView';
|
|
|
30
30
|
export default function Polyline(props) {
|
|
31
31
|
const mapRef = React.useContext(MapContext);
|
|
32
32
|
const polylineIdRef = React.useRef(`polyline_${Date.now()}_${Math.random()}`);
|
|
33
|
-
|
|
33
|
+
const isInitialMount = React.useRef(true);
|
|
34
34
|
// 添加折线
|
|
35
35
|
React.useEffect(() => {
|
|
36
36
|
const polylineId = polylineIdRef.current;
|
|
37
|
-
|
|
38
|
-
mapRef?.current?.addPolyline?.(polylineId, props).then(() => {
|
|
39
|
-
console.log('✅ 折线已添加:', polylineId);
|
|
40
|
-
}).catch((error) => {
|
|
41
|
-
console.error('❌ 添加折线失败:', error);
|
|
42
|
-
});
|
|
37
|
+
mapRef?.current?.addPolyline?.(polylineId, props);
|
|
43
38
|
return () => {
|
|
44
|
-
|
|
45
|
-
mapRef?.current?.removePolyline?.(polylineId).catch((error) => {
|
|
46
|
-
console.error('❌ 移除折线失败:', error);
|
|
47
|
-
});
|
|
39
|
+
mapRef?.current?.removePolyline?.(polylineId);
|
|
48
40
|
};
|
|
49
41
|
}, []);
|
|
50
|
-
// 监听 Props
|
|
42
|
+
// 监听 Props 变化,更新折线(跳过初始渲染)
|
|
51
43
|
React.useEffect(() => {
|
|
44
|
+
if (isInitialMount.current) {
|
|
45
|
+
isInitialMount.current = false;
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
52
48
|
const polylineId = polylineIdRef.current;
|
|
53
|
-
|
|
54
|
-
mapRef?.current?.updatePolyline?.(polylineId, props).catch((error) => {
|
|
55
|
-
console.error('❌ 更新折线失败:', error);
|
|
56
|
-
});
|
|
49
|
+
mapRef?.current?.updatePolyline?.(polylineId, props);
|
|
57
50
|
}, [props.points, props.width, props.color]);
|
|
58
51
|
return null;
|
|
59
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Polyline.js","sourceRoot":"","sources":["../../../src/components/overlays/Polyline.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAoB;IACnD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAS,YAAY,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Polyline.js","sourceRoot":"","sources":["../../../src/components/overlays/Polyline.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAGpD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,KAAoB;IACnD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5C,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAS,YAAY,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACtF,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAE1C,OAAO;IACP,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;QAEzC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAElD,OAAO,GAAG,EAAE;YACV,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,2BAA2B;IAC3B,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,cAAc,CAAC,OAAO,EAAE,CAAC;YAC3B,cAAc,CAAC,OAAO,GAAG,KAAK,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAE7C,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["/*\n * @Author : 尚博信_王强 wangqiang03@sunboxsoft.com\n * @Date : 2025-11-13 15:01:30\n * @LastEditors : 尚博信_王强 wangqiang03@sunboxsoft.com\n * @LastEditTime : 2025-11-14 15:48:14\n * @FilePath : /expo-gaode-map/src/components/overlays/Polyline.tsx\n * @Description : 地图折线组件 - 使用命令式 API\n * \n * Copyright (c) 2025 by 尚博信_王强, All Rights Reserved. \n */\n\nimport * as React from 'react';\nimport { MapContext } from '../../ExpoGaodeMapView';\nimport type { PolylineProps } from '../../types';\n\n/**\n * 地图折线组件\n * \n * @example\n * ```tsx\n * <MapView>\n * <Polyline\n * points={[\n * { latitude: 39.9, longitude: 116.4 },\n * { latitude: 39.91, longitude: 116.41 },\n * ]}\n * color=\"#FF0000\"\n * width={5}\n * />\n * </MapView>\n * ```\n */\nexport default function Polyline(props: PolylineProps) {\n const mapRef = React.useContext(MapContext);\n const polylineIdRef = React.useRef<string>(`polyline_${Date.now()}_${Math.random()}`);\n const isInitialMount = React.useRef(true);\n\n // 添加折线\n React.useEffect(() => {\n const polylineId = polylineIdRef.current;\n \n mapRef?.current?.addPolyline?.(polylineId, props);\n\n return () => {\n mapRef?.current?.removePolyline?.(polylineId);\n };\n }, []);\n\n // 监听 Props 变化,更新折线(跳过初始渲染)\n React.useEffect(() => {\n if (isInitialMount.current) {\n isInitialMount.current = false;\n return;\n }\n \n const polylineId = polylineIdRef.current;\n mapRef?.current?.updatePolyline?.(polylineId, props);\n }, [props.points, props.width, props.color]);\n\n return null;\n}\n"]}
|
package/build/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export * from './ExpoGaodeMap.types';
|
|
2
2
|
export * from './types';
|
|
3
3
|
export { default as ExpoGaodeMapModule } from './ExpoGaodeMapModule';
|
|
4
|
-
export { default as AMapSDK, initSDK,
|
|
4
|
+
export { default as AMapSDK, initSDK, getVersion } from './modules/AMapSDK';
|
|
5
5
|
export { default as AMapLocation, configure, start, stop, isStarted, getCurrentLocation, addLocationListener, coordinateConvert, startUpdatingHeading, stopUpdatingHeading, } from './modules/AMapLocation';
|
|
6
6
|
export { default as MapView } from './ExpoGaodeMapView';
|
|
7
7
|
export type { MapViewRef } from './ExpoGaodeMapView';
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5E,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,SAAS,EACT,KAAK,EACL,IAAI,EACJ,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAMhC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACxD,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EACL,MAAM,EACN,QAAQ,EACR,OAAO,EACP,MAAM,EACN,OAAO,EACP,UAAU,EACV,OAAO,GACR,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC"}
|
package/build/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author : 尚博信_王强 wangqiang03@sunboxsoft.com
|
|
3
3
|
* @Date : 2025-11-13 14:45:15
|
|
4
4
|
* @LastEditors : 尚博信_王强 wangqiang03@sunboxsoft.com
|
|
5
|
-
* @LastEditTime : 2025-11-
|
|
5
|
+
* @LastEditTime : 2025-11-14 16:15:52
|
|
6
6
|
* @FilePath : /expo-gaode-map/src/index.ts
|
|
7
7
|
* @Description : 高德地图 Expo Module 主导出文件
|
|
8
8
|
*
|
|
@@ -14,7 +14,7 @@ export * from './types';
|
|
|
14
14
|
// 导出原生模块
|
|
15
15
|
export { default as ExpoGaodeMapModule } from './ExpoGaodeMapModule';
|
|
16
16
|
// 导出 SDK 模块
|
|
17
|
-
export { default as AMapSDK, initSDK,
|
|
17
|
+
export { default as AMapSDK, initSDK, getVersion } from './modules/AMapSDK';
|
|
18
18
|
// 导出定位模块
|
|
19
19
|
export { default as AMapLocation, configure, start, stop, isStarted, getCurrentLocation, addLocationListener, coordinateConvert, startUpdatingHeading, stopUpdatingHeading, } from './modules/AMapLocation';
|
|
20
20
|
// 地图视图控制已移至 MapView 的 ref 调用
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,SAAS;AACT,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AAExB,SAAS;AACT,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErE,YAAY;AACZ,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,SAAS;AACT,cAAc,sBAAsB,CAAC;AACrC,cAAc,SAAS,CAAC;AAExB,SAAS;AACT,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAErE,YAAY;AACZ,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE5E,SAAS;AACT,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,SAAS,EACT,KAAK,EACL,IAAI,EACJ,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAEhC,6BAA6B;AAC7B,+EAA+E;AAE/E,WAAW;AACX,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAGxD,UAAU;AACV,OAAO,EACL,MAAM,EACN,QAAQ,EACR,OAAO,EACP,MAAM,EACN,OAAO,EACP,UAAU,EACV,OAAO,GACR,MAAM,uBAAuB,CAAC;AAE/B,kBAAkB;AAClB,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC","sourcesContent":["/*\n * @Author : 尚博信_王强 wangqiang03@sunboxsoft.com\n * @Date : 2025-11-13 14:45:15\n * @LastEditors : 尚博信_王强 wangqiang03@sunboxsoft.com\n * @LastEditTime : 2025-11-14 16:15:52\n * @FilePath : /expo-gaode-map/src/index.ts\n * @Description : 高德地图 Expo Module 主导出文件\n * \n * Copyright (c) 2025 by 尚博信_王强, All Rights Reserved. \n */\n\n// 导出类型定义\nexport * from './ExpoGaodeMap.types';\nexport * from './types';\n\n// 导出原生模块\nexport { default as ExpoGaodeMapModule } from './ExpoGaodeMapModule';\n\n// 导出 SDK 模块\nexport { default as AMapSDK, initSDK, getVersion } from './modules/AMapSDK';\n\n// 导出定位模块\nexport {\n default as AMapLocation,\n configure,\n start,\n stop,\n isStarted,\n getCurrentLocation,\n addLocationListener,\n coordinateConvert,\n startUpdatingHeading,\n stopUpdatingHeading,\n} from './modules/AMapLocation';\n\n// 地图视图控制已移至 MapView 的 ref 调用\n// 使用方式: const mapRef = useRef<MapViewRef>(null); mapRef.current.moveCamera() 等\n\n// 导出地图视图组件\nexport { default as MapView } from './ExpoGaodeMapView';\nexport type { MapViewRef } from './ExpoGaodeMapView';\n\n// 导出覆盖物组件\nexport {\n Marker,\n Polyline,\n Polygon,\n Circle,\n HeatMap,\n MultiPoint,\n Cluster,\n} from './components/overlays';\n\n// 默认导出:直接重新导出所有模块\nexport { default } from './ExpoGaodeMapModule';\n"]}
|
|
@@ -8,11 +8,6 @@ import type { SDKConfig } from '../types';
|
|
|
8
8
|
* @param config SDK 配置
|
|
9
9
|
*/
|
|
10
10
|
export declare function initSDK(config: SDKConfig): void;
|
|
11
|
-
/**
|
|
12
|
-
* 设置 API Key
|
|
13
|
-
* @param key API 密钥
|
|
14
|
-
*/
|
|
15
|
-
export declare function setApiKey(key: string): void;
|
|
16
11
|
/**
|
|
17
12
|
* 获取 SDK 版本号
|
|
18
13
|
* @returns SDK 版本
|
|
@@ -20,7 +15,6 @@ export declare function setApiKey(key: string): void;
|
|
|
20
15
|
export declare function getVersion(): Promise<string>;
|
|
21
16
|
declare const _default: {
|
|
22
17
|
initSDK: typeof initSDK;
|
|
23
|
-
setApiKey: typeof setApiKey;
|
|
24
18
|
getVersion: typeof getVersion;
|
|
25
19
|
};
|
|
26
20
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AMapSDK.d.ts","sourceRoot":"","sources":["../../src/modules/AMapSDK.ts"],"names":[],"mappings":"AAUA;;;GAGG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;;GAGG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"AMapSDK.d.ts","sourceRoot":"","sources":["../../src/modules/AMapSDK.ts"],"names":[],"mappings":"AAUA;;;GAGG;AAGH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;;GAGG;AACH,wBAAgB,OAAO,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAE/C;AAED;;;GAGG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElD;;;;;AAED,wBAGE"}
|
package/build/modules/AMapSDK.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @Author : 尚博信_王强 wangqiang03@sunboxsoft.com
|
|
3
3
|
* @Date : 2025-11-13 14:41:55
|
|
4
4
|
* @LastEditors : 尚博信_王强 wangqiang03@sunboxsoft.com
|
|
5
|
-
* @LastEditTime : 2025-11-
|
|
5
|
+
* @LastEditTime : 2025-11-14 16:15:20
|
|
6
6
|
* @FilePath : /expo-gaode-map/src/modules/AMapSDK.ts
|
|
7
7
|
* @Description :
|
|
8
8
|
*
|
|
@@ -18,15 +18,7 @@ import ExpoGaodeMapModule from '../ExpoGaodeMapModule';
|
|
|
18
18
|
* @param config SDK 配置
|
|
19
19
|
*/
|
|
20
20
|
export function initSDK(config) {
|
|
21
|
-
|
|
22
|
-
ExpoGaodeMapModule.setApiKey?.(apiKey);
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* 设置 API Key
|
|
26
|
-
* @param key API 密钥
|
|
27
|
-
*/
|
|
28
|
-
export function setApiKey(key) {
|
|
29
|
-
ExpoGaodeMapModule.setApiKey?.(key);
|
|
21
|
+
ExpoGaodeMapModule.initSDK?.(config);
|
|
30
22
|
}
|
|
31
23
|
/**
|
|
32
24
|
* 获取 SDK 版本号
|
|
@@ -37,7 +29,6 @@ export async function getVersion() {
|
|
|
37
29
|
}
|
|
38
30
|
export default {
|
|
39
31
|
initSDK,
|
|
40
|
-
setApiKey,
|
|
41
32
|
getVersion,
|
|
42
33
|
};
|
|
43
34
|
//# sourceMappingURL=AMapSDK.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AMapSDK.js","sourceRoot":"","sources":["../../src/modules/AMapSDK.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH;;;GAGG;AAEH,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAGvD;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,MAAiB;IACvC,
|
|
1
|
+
{"version":3,"file":"AMapSDK.js","sourceRoot":"","sources":["../../src/modules/AMapSDK.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH;;;GAGG;AAEH,OAAO,kBAAkB,MAAM,uBAAuB,CAAC;AAGvD;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,MAAiB;IACvC,kBAAkB,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,OAAO,kBAAkB,CAAC,UAAU,EAAE,EAAE,IAAI,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACzE,CAAC;AAED,eAAe;IACb,OAAO;IACP,UAAU;CACX,CAAC","sourcesContent":["/*\n * @Author : 尚博信_王强 wangqiang03@sunboxsoft.com\n * @Date : 2025-11-13 14:41:55\n * @LastEditors : 尚博信_王强 wangqiang03@sunboxsoft.com\n * @LastEditTime : 2025-11-14 16:15:20\n * @FilePath : /expo-gaode-map/src/modules/AMapSDK.ts\n * @Description : \n * \n * Copyright (c) 2025 by 尚博信_王强, All Rights Reserved. \n */\n/**\n * 高德地图 SDK 模块\n * 基于 Expo Modules 实现\n */\n\nimport ExpoGaodeMapModule from '../ExpoGaodeMapModule';\nimport type { SDKConfig } from '../types';\n\n/**\n * 初始化高德地图 SDK\n * @param config SDK 配置\n */\nexport function initSDK(config: SDKConfig): void {\n ExpoGaodeMapModule.initSDK?.(config);\n}\n\n/**\n * 获取 SDK 版本号\n * @returns SDK 版本\n */\nexport async function getVersion(): Promise<string> {\n return ExpoGaodeMapModule.getVersion?.() || Promise.resolve('unknown');\n}\n\nexport default {\n initSDK,\n getVersion,\n};\n"]}
|
|
@@ -35,17 +35,39 @@ export interface MapViewProps {
|
|
|
35
35
|
myLocationEnabled?: boolean;
|
|
36
36
|
/**
|
|
37
37
|
* 是否跟随用户位置
|
|
38
|
-
* 当为 true 时,地图会自动移动跟随用户位置(适合导航场景)
|
|
39
|
-
* 当为 false 时,只显示定位点,不会自动移动地图(默认值,适合浏览场景)
|
|
40
38
|
* @default false
|
|
41
39
|
*/
|
|
42
40
|
followUserLocation?: boolean;
|
|
43
41
|
/**
|
|
44
|
-
*
|
|
45
|
-
*/
|
|
46
|
-
|
|
42
|
+
* 定位蓝点配置
|
|
43
|
+
*/
|
|
44
|
+
userLocationRepresentation?: {
|
|
45
|
+
/** 精度圈是否显示 @default true */
|
|
46
|
+
showsAccuracyRing?: boolean;
|
|
47
|
+
/** 是否显示方向指示 @default true @platform ios */
|
|
48
|
+
showsHeadingIndicator?: boolean;
|
|
49
|
+
/** 精度圈填充颜色 支持 '#RRGGBB'、'red' 或 ARGB 数字 */
|
|
50
|
+
fillColor?: string | number;
|
|
51
|
+
/** 精度圈边线颜色 */
|
|
52
|
+
strokeColor?: string | number;
|
|
53
|
+
/** 精度圈边线宽度 @default 0 */
|
|
54
|
+
lineWidth?: number;
|
|
55
|
+
/** 内部蓝色圆点是否使用律动效果 @default true @platform ios */
|
|
56
|
+
enablePulseAnimation?: boolean;
|
|
57
|
+
/** 定位点背景色 @default 'white' @platform ios */
|
|
58
|
+
locationDotBgColor?: string | number;
|
|
59
|
+
/** 定位点蓝色圆点颜色 @default 'blue' @platform ios */
|
|
60
|
+
locationDotFillColor?: string | number;
|
|
61
|
+
/** 定位图标 支持网络图片(http/https)、本地文件(file://)或资源名称 */
|
|
62
|
+
image?: string;
|
|
63
|
+
/** 定位图标宽度(像素) */
|
|
64
|
+
imageWidth?: number;
|
|
65
|
+
/** 定位图标高度(像素) */
|
|
66
|
+
imageHeight?: number;
|
|
67
|
+
};
|
|
47
68
|
/**
|
|
48
69
|
* 是否显示室内地图
|
|
70
|
+
*
|
|
49
71
|
*/
|
|
50
72
|
indoorViewEnabled?: boolean;
|
|
51
73
|
/**
|