以下功能不适用于大于API 22的设备。
Bitmap bm = Bitmap.createBitmap(2160, 16777214, Bitmap.Config.ARGB_8888);
错误日志:
W/System.err: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.graphics.Bitmap.setHasAlpha(boolean)' on a null object reference
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.graphics.Bitmap.createBitmap(Bitmap.java:835)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.graphics.Bitmap.createBitmap(Bitmap.java:808)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.graphics.Bitmap.createBitmap(Bitmap.java:775)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at com.controller.activities.SplashScreenActivity.onCreate(SplashScreenActivity.java:51)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.Activity.performCreate(Activity.java:6248)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1125)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2437)
02-10 11:01:37.478 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2544)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.ActivityThread.access$900(ActivityThread.java:150)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1394)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.os.Handler.dispatchMessage(Handler.java:102)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.os.Looper.loop(Looper.java:168)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at android.app.ActivityThread.main(ActivityThread.java:5845)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at java.lang.reflect.Method.invoke(Native Method)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
02-10 11:01:37.479 6473-6473/com.mazzmedia.daitem1 W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)
答案 0 :(得分:0)
你确实意识到要求一个144千兆字节大小的位图,你的请求是2160像素高,16777214像素宽,并且每个像素占用Bitmap.Config.ARGB_8888
定义的4个字节。
数学使其为2160 x 16777214 x 4,等于144955128960字节。我不清楚你希望它能用于哪种设备。
解决方案:不要创建如此大的位图。