|
1 | 1 | # セットアップ |
2 | 2 |
|
3 | | -- https://github.com/MapConductor/map-sdk-credentials/ から`secrets.properties` をプロジェクトルートに追加保存する |
4 | | - |
5 | | -# KtLint |
6 | | - |
| 3 | +1. リポジトリをクローン |
7 | 4 | ``` |
8 | | -./gradlew allLintChecks |
| 5 | +git clone https://github.com/MapConductor/android-sdk.git |
9 | 6 | ``` |
10 | 7 |
|
11 | | -# マーカーに対するプロパティの追加方法 |
12 | | -1. [MarkerState](./mapconductor-core/src/main/java/com/mapconductor/core/marker/Marker.kt)にプロパティの追加 |
13 | | - |
14 | | -```kotlin |
15 | | -class MarkerState( |
16 | | - val id: String = UUID.randomUUID().toString(), |
17 | | - ... |
18 | | - animation: MarkerAnimation? = null, |
19 | | - ... |
20 | | -) { |
| 8 | +2. https://github.com/MapConductor/map-sdk-credentials/ から`secrets.properties` をプロジェクトルートに追加保存する |
21 | 9 |
|
22 | | - var animation by mutableStateOf(animation) |
| 10 | +3. Android Studioでビルド |
23 | 11 |
|
24 | | -} |
25 | | -``` |
| 12 | +# コーディングスタイル |
26 | 13 |
|
27 | | -2. [MapViewBase.kt](mapconductor-core/src/main/java/com/mapconductor/core/map/MapViewBase.kt)に監視するプロパティの追加 |
28 | | -```kotlin |
29 | | -markers.value.forEach { markerState -> |
30 | | - LaunchedEffect( |
31 | | - markerState.icon, |
32 | | - markerState.draggable, |
33 | | - markerState.internalPosition, |
34 | | - markerState.animation, // <---- 追加 |
35 | | - ) { |
36 | | - controller.updateMarker(markerState) |
37 | | - } |
38 | | -} |
39 | | -``` |
| 14 | +KtLintに従います。ローカルで実行する場合は、下記コマンドを実行します(可能ならば自動修正されます)。 |
40 | 15 |
|
41 | | -3. [MarkerOverlayManagerImpl](mapconductor-core/src/main/java/com/mapconductor/core/controller/MarkerOverlayManagerImpl.kt)でDependencyInjectionする |
42 | | -```kotlin |
43 | | -class MarkerOverlayManagerImpl< |
44 | | - // Actual marker instance type |
45 | | - ActualMarker : Any, |
46 | | ->( |
47 | | - val markerManager: MarkerManager<ActualMarker>, |
48 | | - ..., |
49 | | - val onAnimation: (params: MarkerModifyParams<ActualMarker>) -> Unit, // <--- 追加 |
50 | | - ..., |
51 | | -) : MarkerOverlayManager { |
52 | 16 | ``` |
53 | | - |
54 | | -4. [MarkerOverlayManagerImpl](mapconductor-core/src/main/java/com/mapconductor/core/controller/MarkerOverlayManagerImpl.kt)でコールバックを実行する |
55 | | -```kotlin |
56 | | -results.forEach { param -> |
57 | | - // Execute the animation property |
58 | | - param.state.animation?.let { |
59 | | - coroutine.launch { |
60 | | - onAnimation(param) |
61 | | - } |
62 | | - } |
63 | | -} |
| 17 | +./gradlew allLintChecks |
64 | 18 | ``` |
65 | 19 |
|
66 | | -5. |
0 commit comments