Создаю приложение с Яндекс.Картами. При переходе на активность с определением местоположения у меня выскакивает эта ошибка. Помогите!!!!!!! Вот код активности, куда указывает эта ошибка:
import android.annotation.SuppressLint;
import android.graphics.PointF;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.TextView;
import com.yandex.mapkit.Animation;
import com.yandex.mapkit.MapKitFactory;
import com.yandex.mapkit.geometry.Point;
import com.yandex.mapkit.layers.ObjectEvent;
import com.yandex.mapkit.map.CameraPosition;
import com.yandex.mapkit.mapview.MapView;
import com.yandex.mapkit.user_location.UserLocationLayer;
import com.yandex.mapkit.user_location.UserLocationObjectListener;
import com.yandex.mapkit.user_location.UserLocationView;
import com.yandex.runtime.image.ImageProvider;
public class Main4Activity extends AppCompatActivity implements UserLocationObjectListener {
private String MAPKIT_API_KEY = "ваш ключ";
private MapView mapview;
private UserLocationLayer userLocationLayer;
@SuppressLint("WrongViewCast")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
MapKitFactory.setApiKey(MAPKIT_API_KEY);
MapKitFactory.initialize(this);
setContentView(R.layout.activity_4main);
super.onCreate(savedInstanceState);
mapview = (MapView)findViewById(R.id.mapview);
mapview.getMap().setRotateGesturesEnabled(true);
mapview.getMap().move(new CameraPosition(new Point(55.751574, 37.573856), 11.0f, 0.0f, 0.0f),new Animation(Animation.Type.SMOOTH, 0),null);
userLocationLayer = mapview.getMap().getUserLocationLayer();
userLocationLayer.setEnabled(true);
userLocationLayer.setHeadingEnabled(true);
userLocationLayer.setObjectListener(this);
}
@Override
protected void onStop() {
mapview.onStop();
MapKitFactory.getInstance().onStop();
super.onStop();
}
@Override
protected void onStart() {
super.onStart();
MapKitFactory.getInstance().onStart();
mapview.onStart();
}
@Override
public void onObjectAdded(UserLocationView userLocationView) {
userLocationLayer.setAnchor(
new PointF((float)(mapview.getWidth() * 0.5), (float)(mapview.getHeight() * 0.5)),
new PointF((float)(mapview.getWidth() * 0.5), (float)(mapview.getHeight() * 0.83)));
mapview.getMap().move(
new CameraPosition(new Point(mapview.getWidth(), mapview.getHeight()), 0, 0.0f, 0.0f),
new Animation(Animation.Type.SMOOTH, 5),
null);
userLocationView.getPin().setIcon(ImageProvider.fromResource(
this, R.drawable.current_location));
userLocationView.getArrow().setIcon(ImageProvider.fromResource(
this, R.drawable.current_location));
userLocationView.getAccuracyCircle().setFillColor(R.color.colorAccent);
}
@Override
public void onObjectRemoved(UserLocationView userLocationView) {
}
@Override
public void onObjectUpdated(UserLocationView userLocationView, ObjectEvent objectEvent) {
}
}
Сама ошибка:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.serge.myapplication/com.example.serge.myapplication.Main4Activity}: java.lang.NullPointerException: Attempt to invoke virtual method 'com.yandex.mapkit.map.Map com.yandex.mapkit.mapview.MapView.getMap()' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2895) at android.app.ActivityThread.-wrap11(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1616) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:171) at android.app.ActivityThread.main(ActivityThread.java:6651) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:824) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'com.yandex.mapkit.map.Map com.yandex.mapkit.mapview.MapView.getMap()' on a null object reference at com.example.serge.myapplication.Main4Activity.onCreate(Main4Activity.java:38) at android.app.Activity.performCreate(Activity.java:7088) at android.app.Activity.performCreate(Activity.java:7079) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1215) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2770) ... 9 more
Я разобрался. Ребят, когда возникает такая ошибка, то всегда внимательно проверяйте xml файл!
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Вопрос достаточно простой, правда сам пока не нашёл на него ответ
Я написал свою маленькою библиотеку, все методы и переменние коментировал
Вопрос чисто теоретический и простой, но в интернетах не нашелКак реализовать вот это: