Android通过进度条将摄像头图像、视频上传至服务器
面对这个错误,我不知道如何修复-我在MainActivity.java和UploadActivity.java上遇到了错误。我已经尝试了很多解决方法,但没有任何帮助Android通过进度条将摄像头图像、视频上传至服务器,android,android-studio,Android,Android Studio,面对这个错误,我不知道如何修复-我在MainActivity.java和UploadActivity.java上遇到了错误。我已经尝试了很多解决方法,但没有任何帮助 09-20 18:06:37.279 21398-21398/info.androidhive.camerafileupload E/AndroidRuntime: FATAL EXCEPTION: main
09-20 18:06:37.279 21398-21398/info.androidhive.camerafileupload E/AndroidRuntime: FATAL EXCEPTION: main
Process: info.androidhive.camerafileupload, PID: 21398
java.lang.RuntimeException: Unable to start activity ComponentInfo{info.androidhive.camerafileupload/info.androidhive.camerafileupload.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setBackgroundDrawable(android.graphics.drawable.Drawable)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setBackgroundDrawable(android.graphics.drawable.Drawable)' on a null object reference
at info.androidhive.camerafileupload.MainActivity.onCreate(MainActivity.java:46)
at android.app.Activity.performCreate(Activity.java:6237)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
at android.app.ActivityThread.-wrap11(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5417)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
错误堆栈跟踪告诉您:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setBackgroundDrawable(android.graphics.drawable.Drawable)' on a null object reference
所以问题是当你这样做的时候:
getActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor(getResources().getString(R.color.action_bar))));
对getActionBar()的调用返回null
getActionBar()可能返回null的原因有很多,但最常见的原因是您应该调用
getSupportActionBar()
而不是
getActionBar()
因此,尝试用“getSupportActionBar()”替换代码中“getActionBar()的所有实例”