Слава Яндексу и Андроиду, получилось! Поделюсь, может, кому-нибудь пригодится:
Вызов карты и нанесение на неё точки:
1). Получить ключ для работы с MapKit
1. Перейдите в Кабинет Разработчика.
2. Авторизуйтесь с учетной записью Яндекса или зарегистрируйте новый аккаунт.
3. Нажмите Получить ключ и выберите пакет MapKit SDK.
4. Заполните информацию о проекте, укажите нужный тариф и нажмите Отправить.
Дальнейшие инструкции придут на почту.
Полученный ключ можно использовать для работы с MapKit в нескольких приложениях.
2) Зайти в файл Gradle Scripts – build.gradle.
Там найти раздел dependencies {
Вставить туда строку:
implementation 'com.yandex.android:maps.mobile:4.1.0-full'
(на всякий случай, если начнёт выдавать ошибку, вот весь мой раздел dependencies:
dependencies {
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.6.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
implementation 'com.yandex.android:maps.mobile:4.1.0-full'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
Вносить записи о Mavene не требуется – он и так уже прописан.
Далее – код MainActivity:
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.yandex.mapkit.Animation;
import com.yandex.mapkit.MapKitFactory;
import com.yandex.mapkit.geometry.Point;
import com.yandex.mapkit.map.CameraPosition;
import com.yandex.mapkit.mapview.MapView;
public class MainActivity extends AppCompatActivity {
public MapView mapview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// ниже, вместо ??????? вставляем Ваш ключ, присланный Вам из Яндекс:
MapKitFactory.setApiKey("????????????????????");
MapKitFactory.initialize(this);
// Укажите имя своей Activity вместо mapview. У меня она называется map
setContentView(R.layout.map);
mapview = (MapView)findViewById(R.id.mapview);
mapview.getMap().move(
new CameraPosition(new Point(55.751574, 37.573856), 11.0f, 0.0f, 0.0f),
new Animation(Animation.Type.SMOOTH, 0),
null);
// рисуем точку:
Point mappoint= new Point(55.79, 37.57);
mapview.getMap().getMapObjects().addPlacemark(mappoint);
}
@Override
protected void onStop() {
mapview.onStop();
MapKitFactory.getInstance().onStop();
super.onStop();
}
@Override
protected void onStart() {
super.onStart();
MapKitFactory.getInstance().onStart();
mapview.onStart();
}
}
После запуска Вашего приложения должна появиться карта Москвы, а чуть выше центра – синий кружочек – наша точка.