gpt4 book ai didi

java - 白屏和崩溃-Android Studio

转载 作者:行者123 更新时间:2023-12-01 16:20:51 26 4
gpt4 key购买 nike

我一直在关注此视频https://www.youtube.com/watch?v=Ok9v0YYgIG4,以开始使用mapbox。
我已经完成了该家伙在vid中所做的所有工作,但是当我在设备上启动该应用程序时,出现白屏,然后该应用程序崩溃了(即使我没有错误也没有警告)。有谁知道如何修复它并使它起作用?

(目前,我只想在屏幕上放一张地图)

这是XML

<com.mapbox.mapboxsdk.maps.Mapview
android:id="@+id/mapView"
android:layout_width="match_parent"
android:layout_height="match_parent"
mapbox:mapbox_cameraTargetLat="6.641183"
mapbox:mapbox_cameraTargetLng="46.7784736"
mapbox:mapbox_styleUrl="mapbox://styles/mapbox/streets-v10"
mapbox:mapbox_cameraZoom="12"
/>


这是代码:

public class MapActivity extends AppCompatActivity {

private MapView mapView;
private MapboxMap map;

public MapActivity() {
}

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Mapbox.getInstance(this, "pk.eyJ1IjoidGlyYWlubyIsImEiOiJja2F6Y3ZyejQwaWJ6MnJtaWdmcmU3cjV5In0.5_0xHC_VyQUgyvUQ8IVNfA");
setContentView(R.layout.activity_main);
mapView = findViewById(R.id.mapView);
mapView.onCreate(savedInstanceState);
mapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(@NonNull MapboxMap mapboxMap) {
mapboxMap.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() {
@Override
public void onStyleLoaded(@NonNull Style style) {

// Map is set up and the style has loaded. Now you can add data or make other map adjustments.


}
});
}
});

//setContentView(R.layout.activity_map);
}

@Override
public void onMapReady(@NonNull MapboxMap mapboxMap) {
map = mapboxMap;
enableLocation();
}

@Override
public void onStart() {
super.onStart();
mapView.onStart();
}

@Override
public void onResume() {
super.onResume();
mapView.onResume();
}

@Override
public void onPause() {
super.onPause();
mapView.onPause();
}

@Override
public void onStop() {
super.onStop();
mapView.onStop();
}

@Override
public void onLowMemory() {
super.onLowMemory();
mapView.onLowMemory();
}

@Override
protected void onDestroy() {
super.onDestroy();
mapView.onDestroy();
}

@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mapView.onSaveInstanceState(outState);
}



当我看一下调试时,我得到了:

E / AndroidRuntime:致命异常:main
流程:com.example.testmapbox,PID:25911
java.lang.RuntimeException:无法启动活动ComponentInfo {com.example.testmapbox / com.example.testmapbox.MainActivity}:android.view.InflateException:二进制XML文件行#9:二进制XML文件行#9:错误夸大类com.mapbox.mapboxsdk.maps.Mapview
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3430)
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3614)
在android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:86)
在android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
在android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2199)
在android.os.Handler.dispatchMessage(Handler.java:112)
在android.os.Looper.loop(Looper.java:216)
在android.app.ActivityThread.main(ActivityThread.java:7625)
在java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run(RuntimeInit.java:524)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)
原因:android.view.InflateException:二进制XML文件第9行:二进制XML文件第9行:膨胀类com.mapbox.mapboxsdk.maps.Mapview时出错
原因:android.view.InflateException:二进制XML文件第9行:膨胀类com.mapbox.mapboxsdk.maps.Mapview的错误
由以下原因引起:java.lang.ClassNotFoundException:在路径:DexPathList [[zip文件“ /data/app/com.example.testmapbox-yBfjzQOu9Iwzqc3V9nJN9g==/base .apk“],nativeLibraryDirectories = [/ data / app / com.example.testmapbox-yBfjzQOu9Iwzqc3V9nJN9g == / lib / arm64,/data/app/com.example.testmapbox-yBfjzQOu9Iwzqc3V9nJN9k==/base。 -v8a,/ system / lib64,/ product / lib64]]
在dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
在java.lang.ClassLoader.loadClass(ClassLoader.java:379)
在java.lang.ClassLoader.loadClass(ClassLoader.java:312)
在android.view.LayoutInflater.createView(LayoutInflater.java:613)
在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:801)
在android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:741)
在android.view.LayoutInflater.rInflate(LayoutInflater.java:874)
在android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:835)
在android.view.LayoutInflater.inflate(LayoutInflater.java:515)
在android.view.LayoutInflater.inflate(LayoutInflater.java:423)
在android.view.LayoutInflater.inflate(LayoutInflater.java:374)
在androidx.appcompat.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:555)
在androidx.appcompat.app.AppCompatActivity.setContentView(AppCompatActivity.java:161)
在com.example.testmapbox.MainActivity.onCreate(MainActivity.java:22)
在android.app.Activity.performCreate(Activity.java:7458)
在android.app.Activity.performCreate(Activity.java:7448)
在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1286)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3409)
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3614)
在android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:86)
在android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)
在android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)
在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2199)
在android.os.Handler.dispatchMessage(Handler.java:112)
在android.os.Looper.loop(Looper.java:216)
在android.app.ActivityThread.main(ActivityThread.java:7625)
在java.lang.reflect.Method.invoke(本机方法)
在com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run(RuntimeInit.java:524)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:987)

最佳答案

您能否同时共享项目级别的build.gradle和应用程序的build.gradle? youtube视频没有提及项目级别build.gradle所需的配置,因此我认为可能会丢失。

请参阅此文档,了解所需的依赖项:https://docs.mapbox.com/android/maps/overview/#1-add-the-dependency

在项目级别build.gradle中,添加以下内容:



repositories {
mavenCentral()
}





应用程序级别build.gradle,添加以下内容:



dependencies {
implementation 'com.mapbox.mapboxsdk:mapbox-android-sdk:9.2.0'
}





另外,您的代码两次定义了onMapReady回调。您应该摆脱其中之一。

关于java - 白屏和崩溃-Android Studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62286697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com