Skip to content

Commit 920a311

Browse files
author
huangjiahong
committed
规整基础框架,对不同类型的操作进行分治管理
1 parent 59479c6 commit 920a311

File tree

14 files changed

+625
-66
lines changed

14 files changed

+625
-66
lines changed

android/src/main/java/com/imfunc/flutter_minemap/FMMMapController.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,15 +11,13 @@
1111
import com.imfunc.flutter_minemap.interfaces.MineMapInterface;
1212
import com.imfunc.flutter_minemap.unil.Config;
1313
import com.imfunc.flutter_minemap.unil.Constants;
14-
import com.imfunc.flutter_minemap.unil.conveter.FMMMapConveter;
15-
import com.imfunc.flutter_minemap.views.FMMMapHandler;
14+
import com.imfunc.flutter_minemap.views.mapHandler.MMapHandlerFactory;
1615
import com.minedata.minemap.MinemapAccountManager;
1716
import com.minedata.minemap.camera.CameraPosition;
1817
import com.minedata.minemap.geometry.LatLng;
1918
import com.minedata.minemap.map.MapView;
2019
import com.minedata.minemap.map.MineMap;
2120
import com.minedata.minemap.map.UiSettings;
22-
import com.minemap.minemapsdk.maps.ImplMineMapOptions;
2321

2422
import java.util.Map;
2523

@@ -41,7 +39,7 @@ public class FMMMapController implements MethodChannel.MethodCallHandler, Applic
4139

4240
private final MethodChannel mMethodChannel;
4341

44-
private FMMMapHandler fmmMapHandler;
42+
private MMapHandlerFactory mMapHandlerFactory;
4543

4644
public FMMMapController(int id, Context context, BinaryMessenger binaryMessenger, Map<String, Object> creationParams) {
4745

@@ -50,16 +48,18 @@ public FMMMapController(int id, Context context, BinaryMessenger binaryMessenger
5048
this.application = ((Application) (context.getApplicationContext()));
5149
this.application.registerActivityLifecycleCallbacks(this);
5250

51+
initMap(creationParams);
52+
5353
mMethodChannel = new MethodChannel(binaryMessenger,
5454
Constants.VIEW_METHOD_CHANNEL_PREFIX + id);
5555
mMethodChannel.setMethodCallHandler(this);
5656

57-
fmmMapHandler = new FMMMapHandler(this);
58-
initMap(creationParams);
57+
mMapHandlerFactory = new MMapHandlerFactory(this);
5958
}
6059

6160
public void release() {
6261
mMethodChannel.setMethodCallHandler(null);
62+
mMapHandlerFactory.release();
6363
}
6464

6565
/// 初始化地图组件
@@ -115,7 +115,7 @@ public void onMethodCall(@NonNull MethodCall call, @NonNull MethodChannel.Result
115115
return;
116116
}
117117

118-
fmmMapHandler.dispatchMethodHandler(call, result);
118+
mMapHandlerFactory.dispatchMethodHandler(mContext, call, result);
119119
}
120120

121121
public MineMap getMineMap() {
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
[{"latitude":"41.6772", "longitude":"123.4631"},
2+
{"latitude":"45.8021", "longitude":"126.5358"},
3+
{"latitude":"40.8415", "longitude":"111.7520"},
4+
{"latitude":"29.5710", "longitude":"106.55714"},
5+
{"latitude":"38.492353", "longitude":"106.238975"},
6+
{"latitude":"34.347499", "longitude":"108.94628"},
7+
{"latitude":"37.876825", "longitude":"112.557051"},
8+
{"latitude":"38.048838", "longitude":"114.520782"},
9+
{"latitude":"32.064752", "longitude":"118.802914"},
10+
{"latitude":"31.236342", "longitude":"121.4737"},
11+
{"latitude":"43.821901", "longitude":"125.330130"},
12+
{"latitude":"31.826835", "longitude":"117.235460"},
13+
{"latitude":"30.5763", "longitude":"104.0648"},
14+
{"latitude":"29.6501", "longitude":"91.1210"},
15+
{"latitude":"36.6234", "longitude":"101.7843"},
16+
{"latitude":"24.8859", "longitude":"102.9397"},
17+
{"latitude":"28.2340", "longitude":"112.9453"},
18+
{"latitude":"30.2799", "longitude":"120.1617"},
19+
{"latitude":"26.0803", "longitude":"119.2965"},
20+
{"latitude":"23.1352", "longitude":"113.2708"},
21+
{"latitude":"22.2048", "longitude":"113.5556"},
22+
{"latitude":"38.5258", "longitude":"102.1942"},
23+
{"latitude":"39.8078", "longitude":"98.2220"},
24+
{"latitude":"37.3828", "longitude":"97.3778"},
25+
{"latitude":"34.4772", "longitude":"100.2513"},
26+
{"latitude":"34.5872", "longitude":"105.7313"},
27+
{"latitude":"32.4418", "longitude":"105.8500"},
28+
{"latitude":"35.8554", "longitude":"104.6174"},
29+
{"latitude":"32.9966", "longitude":"112.5350"},
30+
{"latitude":"36.5910", "longitude":"109.4898"},
31+
{"latitude":"38.8802", "longitude":"115.4710"},
32+
{"latitude":"36.2016", "longitude":"113.1231"},
33+
{"latitude":"36.1038", "longitude":"114.3996"},
34+
{"latitude":"38.2910", "longitude":"109.7412"},
35+
{"latitude":"34.6244", "longitude":"112.4600"},
36+
{"latitude":"34.42036", "longitude":"115.6628"},
37+
{"latitude":"34.6023", "longitude":"119.22957"},
38+
{"latitude":"36.0216", "longitude":"106.24916"},
39+
{"latitude":"40.99985", "longitude":"113.1426"},
40+
{"latitude":"40.9578", "longitude":"117.9698"},
41+
{"latitude":"41.5794", "longitude":"120.45735"},
42+
{"latitude":"37.38845", "longitude":"117.9792"},
43+
{"latitude":"33.9971", "longitude":"116.83465"},
44+
{"latitude":"37.4413", "longitude":"116.36585"},
45+
{"latitude":"37.0768", "longitude":"114.51085"},
46+
{"latitude":"37.52555", "longitude":"111.14805"},
47+
{"latitude":"34.9030", "longitude":"108.9515"},
48+
{"latitude":"32.6906", "longitude":"109.0359"},
49+
{"latitude":"34.0416", "longitude":"113.8588"},
50+
{"latitude":"49.2180", "longitude":"119.7722"},
51+
{"latitude":"49.2180", "longitude":"119.7722"},
52+
{"latitude":"47.3600", "longitude":"123.9245"},
53+
{"latitude":"46.5932", "longitude":"125.1098"},
54+
{"latitude":"47.7333", "longitude":"128.8471"},
55+
{"latitude":"47.3560", "longitude":"130.3042"},
56+
{"latitude":"45.7764", "longitude":"131.00965"},
57+
{"latitude":"46.6588", "longitude":"126.9757"},
58+
{"latitude":"45.6254", "longitude":"122.8453"},
59+
{"latitude":"45.1472", "longitude":"124.8316"},
60+
{"latitude":"45.1472", "longitude":"124.8316"},
61+
{"latitude":"43.8434", "longitude":"126.5560"},
62+
{"latitude":"43.6582", "longitude":"122.2513"},
63+
{"latitude":"42.8912", "longitude":"125.1502"},
64+
{"latitude":"41.7339", "longitude":"125.9465"},
65+
{"latitude":"44.5587", "longitude":"129.6389"},
66+
{"latitude":"44.5587", "longitude":"129.6389"},
67+
{"latitude":"42.0279", "longitude":"121.6765"},
68+
{"latitude":"42.0279", "longitude":"121.6765"},
69+
{"latitude":"41.1140", "longitude":"123.0099"},
70+
{"latitude":"40.7174", "longitude":"120.8434"},
71+
{"latitude":"38.3102", "longitude":"116.8453"},
72+
{"latitude":"37.5192", "longitude":"122.1283"},
73+
{"latitude":"36.0725", "longitude":"120.3894"},
74+
{"latitude":"34.6023", "longitude":"119.2296"},
75+
{"latitude":"31.8168", "longitude":"119.9801"},
76+
{"latitude":"31.6962", "longitude":"113.3891"},
77+
{"latitude":"31.0418", "longitude":"112.2058"},
78+
{"latitude":"32.6351", "longitude":"110.8045"},
79+
{"latitude":"29.8470", "longitude":"114.3290"},
80+
{"latitude":"29.2743", "longitude":"117.1850"},
81+
{"latitude":"30.1355", "longitude":"118.1815"},
82+
{"latitude":"27.9537", "longitude":"116.3646"},
83+
{"latitude":"30.9465", "longitude":"118.7652"},
84+
{"latitude":"29.1226", "longitude":"110.4849"},
85+
{"latitude":"28.4729", "longitude":"119.9295"},
86+
{"latitude":"27.5756", "longitude":"110.0081"},
87+
{"latitude":"25.2798", "longitude":"110.2964"},
88+
{"latitude":"24.6990", "longitude":"108.0919"},
89+
{"latitude":"23.90785", "longitude":"106.6250"},
90+
{"latitude":"24.4094", "longitude":"111.5731"},
91+
{"latitude":"25.4963", "longitude":"103.8027"},
92+
{"latitude":"26.5881", "longitude":"101.7252"},
93+
{"latitude":"23.8905", "longitude":"100.0953"},
94+
{"latitude":"21.4869", "longitude":"109.1266"},
95+
{"latitude":"23.7499", "longitude":"114.7071"},
96+
{"latitude":"25.0811", "longitude":"117.0231"},
97+
{"latitude":"24.8802", "longitude":"118.6823"},
98+
{"latitude":"29.55826", "longitude":"103.7719"},
99+
{"latitude":"31.1467", "longitude":"97.1787"},
100+
{"latitude":"34.76", "longitude":"113.65"}]

android/src/main/java/com/imfunc/flutter_minemap/unil/Constants.java

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,29 @@ public static class ViewType {
1616
public static class FMMMapStateMethodId {
1717
public static final String sMapSetStyleMethod = "flutter_minemap/map/setStyleJson";
1818
}
19+
20+
/**
21+
* MapHandler类型
22+
*/
23+
public static class MMapHandlerType {
24+
public static final int MAP_STATE = 0;
25+
public static final int CLUSTER_LAYER = 1;
26+
}
27+
28+
/**
29+
* 聚合点图层方法集合
30+
*/
31+
public static class FMMClusterLayerMethodId {
32+
/// 添加聚合点图层
33+
public static final String sMapAddClusterLayerMethod = "flutter_minemap/layer/addClusterLayer";
34+
35+
/// 添加聚合点图层集合
36+
public static final String sMapAddAllClusterLayerMethod = "flutter_minemap/layer/addAllClusterLayer";
37+
38+
/// 清空聚合点图层
39+
public static final String sMapClearClusterLayerMethod = "flutter_minemap/layer/clearClusterLayer";
40+
41+
/// 删除聚合点图层
42+
public static final String sMapRemoveClusterLayerMethod = "flutter_minemap/layer/removeClusterLayer";
43+
}
1944
}
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
package com.imfunc.flutter_minemap.unil;
2+
3+
public class Env {
4+
public static Boolean DEBUG = false;
5+
6+
/**
7+
* 空白地图
8+
*/
9+
public static final int MAP_TYPE_NONE = 3;
10+
11+
/**
12+
* 普通地图
13+
*/
14+
public static final int MAP_TYPE_NORMAL = 1;
15+
16+
/**
17+
* 卫星地图
18+
*/
19+
public static final int MAP_TYPE_SATELLITE = 2;
20+
21+
22+
/**
23+
* 地图左下方
24+
*/
25+
public static final int LOGO_POSITION_LEFT_BOTTOM = 0;
26+
27+
/**
28+
* 地图左下方
29+
*/
30+
public static final int LOGO_POSITION_LEFT_TOP = 1;
31+
32+
/**
33+
* 地图中下方
34+
*/
35+
public static final int LOGO_POSITION_CENTER_BOTTOM = 2;
36+
37+
/**
38+
* 地图中上方
39+
*/
40+
public static final int LOGO_POSITION_CENTER_TOP = 3;
41+
42+
/**
43+
* 地图右下方
44+
*/
45+
public static final int LOGO_POSITION_RIGTH_BOTTOM = 4;
46+
47+
/**
48+
* 地图右上方
49+
*/
50+
public static final int LOGO_POSITION_RIGTH_TOP = 5;
51+
52+
/**
53+
* 定位图层显示方式
54+
*/
55+
public static class LocationMode {
56+
/**
57+
* 普通态: 更新定位数据时不对地图做任何操作
58+
*/
59+
public static final int NORMAL = 0;
60+
61+
/**
62+
* 定位方向模式
63+
*/
64+
public static final int MODEHEADING = 1;
65+
66+
/**
67+
* 跟随态,保持定位图标在地图中心
68+
*/
69+
public static final int FOLLOWING = 2;
70+
71+
/**
72+
* 罗盘态,显示定位方向圈,保持定位图标在地图中心
73+
*/
74+
public static final int COMPASS = 3;
75+
}
76+
}

android/src/main/java/com/imfunc/flutter_minemap/views/FMMMapHandler.java

Lines changed: 0 additions & 55 deletions
This file was deleted.

0 commit comments

Comments
 (0)