android.graphics.BitmapFactory.nativeDecodeAsset issues in Android 4.3 -


i having issues app android 4.3. not sure causing , error coming from. not using bitmap functions can debug it. here error log google play:

java.lang.runtimeexception: unable start activity componentinfo{com.capripio.wordzcatch/com.capripio.wordzcatch.splashactivity}: android.view.inflateexception: binary xml file line #1: error inflating class android.widget.relativelayout             @ android.app.activitythread.performlaunchactivity(activitythread.java:2308)             @ android.app.activitythread.handlelaunchactivity(activitythread.java:2362)             @ android.app.activitythread.access$700(activitythread.java:168)             @ android.app.activitythread$h.handlemessage(activitythread.java:1329)             @ android.os.handler.dispatchmessage(handler.java:99)             @ android.os.looper.loop(looper.java:137)             @ android.app.activitythread.main(activitythread.java:5493)             @ java.lang.reflect.method.invokenative(native method)             @ java.lang.reflect.method.invoke(method.java:525)             @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:1209)             @ com.android.internal.os.zygoteinit.main(zygoteinit.java:1025)             @ dalvik.system.nativestart.main(native method)             caused by: android.view.inflateexception: binary xml file line #1: error inflating class android.widget.relativelayout             @ android.view.layoutinflater.createview(layoutinflater.java:626)             @ com.android.internal.policy.impl.phonelayoutinflater.oncreateview(phonelayoutinflater.java:56)             @ android.view.layoutinflater.oncreateview(layoutinflater.java:675)             @ android.view.layoutinflater.createviewfromtag(layoutinflater.java:700)             @ android.view.layoutinflater.inflate(layoutinflater.java:470)             @ android.view.layoutinflater.inflate(layoutinflater.java:398)             @ android.view.layoutinflater.inflate(layoutinflater.java:354)             @ com.android.internal.policy.impl.phonewindow.setcontentview(phonewindow.java:361)             @ android.app.activity.setcontentview(activity.java:1956)             @ com.capripio.wordzcatch.splashactivity.oncreate(splashactivity.java:14)             @ android.app.activity.performcreate(activity.java:5372)             @ android.app.instrumentation.callactivityoncreate(instrumentation.java:1104)             @ android.app.activitythread.performlaunchactivity(activitythread.java:2270)             ... 11 more             caused by: java.lang.reflect.invocationtargetexception             @ java.lang.reflect.constructor.constructnative(native method)             @ java.lang.reflect.constructor.newinstance(constructor.java:417)             @ android.view.layoutinflater.createview(layoutinflater.java:600)             ... 23 more             caused by: java.lang.outofmemoryerror             @ android.graphics.bitmapfactory.nativedecodeasset(native method)             @ android.graphics.bitmapfactory.decodestream(bitmapfactory.java:596)             @ android.graphics.bitmapfactory.decoderesourcestream(bitmapfactory.java:444)             @ android.graphics.drawable.drawable.createfromresourcestream(drawable.java:832)             @ android.content.res.resources.loaddrawable(resources.java:2988)             @ android.content.res.typedarray.getdrawable(typedarray.java:602)             @ android.view.view.<init>(view.java:3563)             @ android.view.view.<init>(view.java:3492)             @ android.view.viewgroup.<init>(viewgroup.java:469)             @ android.widget.relativelayout.<init>(relativelayout.java:242)             ... 26 more 

thanks!

i've found ways , make small class.

public abstract class bitmapresloader {  public static bitmap decodebitmapfromresource(bitmap.config config, resources res, int resid, int reqwidth, int reqheight) {      final bitmapfactory.options options = new bitmapfactory.options();     options.injustdecodebounds = true;     bitmapfactory.decoderesource(res, resid, options);      options.insamplesize = calculateinsamplesize(options, reqwidth, reqheight);     options.injustdecodebounds = false;     options.inpreferredconfig = config;      return bitmapfactory.decoderesource(res, resid, options); }  private static int calculateinsamplesize(             bitmapfactory.options options, int reqwidth, int reqheight) {     final int height = options.outheight;     final int width = options.outwidth;     int insamplesize = 1;      if (height > reqheight || width > reqwidth) {         final int heightratio = math.round((float) height / (float) reqheight);         final int widthratio = math.round((float) width / (float) reqwidth);         insamplesize = heightratio < widthratio ? heightratio : widthratio;     }      return insamplesize; } } 

and use as

decodebitmapfromresource(             bitmap.config.argb_8888, splashactivity.getresources(),             r.drawable.bg, 480, 800); 

Comments

Popular posts from this blog

php - SPIP: From Tag directly to an article -

jquery - isAjaxRequest always return false -

ruby on rails - In a controller spec, how to find a specific tag in the generated view? -