Any help please???
On Tuesday, November 15, 2016 at 7:04:11 PM UTC+2, Chairi Kiourt wrote:
>
> Hi everyone i am new to android
>
> I have an app which gets data from a mysql by using php. The problem is
> that the application crashes some times unexpectivly, i put the firebase
> crash report and i get the following errors:
>
> Exception java.lang.IllegalStateException: ImageLoader must be init with
> configuration before using
> com.nostra13.universalimageloader.core.ImageLoader.checkConfiguration (
> ImageLoader.java:568)
> com.nostra13.universalimageloader.core.ImageLoader.displayImage (
> ImageLoader.java:208)
> com.nostra13.universalimageloader.core.ImageLoader.displayImage (
> ImageLoader.java:365)
> com.nostra13.universalimageloader.core.ImageLoader.displayImage (
> ImageLoader.java:340)
> forme.restaurant.digital.menu.view.ImageUtil.displayRoundImage (ImageUtil.
> java:29)
> forme.restaurant.digital.menu.activities.RecycleViewAdapterNew.onBindViewHolder
>
> (RecycleViewAdapterNew.java:108)
> forme.restaurant.digital.menu.activities.RecycleViewAdapterNew.onBindViewHolder
>
> (RecycleViewAdapterNew.java:36)
> android.support.v7.widget.RecyclerView$Adapter.bindViewHolder (
> RecyclerView.java:5138)
> android.support.v7.widget.RecyclerView$Recycler.getViewForPosition (
> RecyclerView.java:4433)
> android.support.v7.widget.RecyclerView$Recycler.getViewForPosition (
> RecyclerView.java:4326)
> android.support.v7.widget.LinearLayoutManager$LayoutState.next (
> LinearLayoutManager.java:1955)
> android.support.v7.widget.LinearLayoutManager.layoutChunk (
> LinearLayoutManager.java:1364)
> android.support.v7.widget.LinearLayoutManager.fill (LinearLayoutManager.
> java:1327)
> android.support.v7.widget.LinearLayoutManager.onLayoutChildren (
> LinearLayoutManager.java:556)
> android.support.v7.widget.RecyclerView.dispatchLayout (RecyclerView.java:
> 2713)
> android.support.v7.widget.RecyclerView.onLayout (RecyclerView.java:3011)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.widget.LinearLayout.setChildFrame (LinearLayout.java:1959)
> android.widget.LinearLayout.layoutVertical (LinearLayout.java:1813)
> android.widget.LinearLayout.onLayout (LinearLayout.java:1722)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.widget.FrameLayout.layoutChildren (FrameLayout.java:633)
> android.widget.FrameLayout.onLayout (FrameLayout.java:568)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.support.v7.internal.widget.ActionBarOverlayLayout.onLayout (
> ActionBarOverlayLayout.java:493)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.widget.FrameLayout.layoutChildren (FrameLayout.java:633)
> android.widget.FrameLayout.onLayout (FrameLayout.java:568)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.widget.LinearLayout.setChildFrame (LinearLayout.java:1959)
> android.widget.LinearLayout.layoutVertical (LinearLayout.java:1813)
> android.widget.LinearLayout.onLayout (LinearLayout.java:1722)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.widget.FrameLayout.layoutChildren (FrameLayout.java:633)
> android.widget.FrameLayout.onLayout (FrameLayout.java:568)
> android.view.View.layout (View.java:15905)
> android.view.ViewGroup.layout (ViewGroup.java:5108)
> android.view.ViewRootImpl.performLayout (ViewRootImpl.java:2425)
> android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2131)
> android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1256)
> android.view.ViewRootImpl$TraversalRunnable.run (ViewRootImpl.java:6443)
> android.view.Choreographer$CallbackRecord.run (Choreographer.java:800)
> android.view.Choreographer.doCallbacks (Choreographer.java:603)
> android.view.Choreographer.doFrame (Choreographer.java:572)
> android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.
> java:786)
> android.os.Handler.handleCallback (Handler.java:815)
> android.os.Handler.dispatchMessage (Handler.java:104)
> android.os.Looper.loop (Looper.java:194)
> android.app.ActivityThread.main (ActivityThread.java:5576)
> java.lang.reflect.Method.invoke (Method.java)
> java.lang.reflect.Method.invoke (Method.java:372)
> com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.
> java:955)
> com.android.internal.os.ZygoteInit.main (ZygoteInit.java:750)
>
> I have these code
>
>
> CusDi.java
> public class CusDi extends AppCompatActivity {
>
> protected void onCreate(Bundle savedInstanceState) {
>
>
> getCusDi();
>
>
> }
>
> private void getCusDi() {
> M.showLoadingDialog(CusDi.this);
> CusDiAPI mCommentsAPI = APIService.createService(CusDiAPI.class);
> mCommentsAPI.getUserPosts(cuisineid, new Callback<List<CusDiPojo>>() {
>
>
> @Override
> public void success(List<CusDiPojo> cusDiPojos, Response response) {
> if (cusDiPojos != null) {
> cusdilist = cusDiPojos;
> for (CusDiPojo cusdidata : cusdilist) {
> String cstdiid=cusdidata.getDisid();
> String cstcuiid=cusdidata.getCusineid();
> String cstdiname=cusdidata.getDishname();
> String cstditype=cusdidata.getDishtype();
> String cstdes=cusdidata.getDescription();
> String cstprice=cusdidata.getPrice();
> String cstdimg=cusdidata.getDishimage();
> cusdilist.add(cstdiid);
> cuscuiidlist.add(cstcuiid);
> cusdnamelist.add(cstdiname);
> cusdtypelist.add(cstditype);
> cusdeslist.add(cstdes);
> cusdpricelist.add(cstprice);
> cusimglist.add(cstdimg);
> }
> recycleradapternew = new RecycleViewAdapterNew(CusDi.this,
> getApplicationContext(), cusdilist);
> mRecyclerView1.setAdapter(recycleradapternew);
> }
> M.hideLoadingDialog();
> }
>
> @Override
> public void failure(RetrofitError error) {
> M.hideLoadingDialog();
> Log.e("error", error.getMessage());
> }
> });
> }
>
>
> }
>
>
>
>
>
>
> RecycleViewAdapterNew.java
>
> public class RecycleViewAdapterNew extends
> RecyclerView.Adapter<RecycleViewAdapterNew.DataObjectHolder> {
>
> public void onBindViewHolder(final DataObjectHolder holder, final int
> position) {
>
> ImageUtil.displayRoundImage(holder.imgdish, DataManager.URL +
> custdisheslist.get(position).getDishimage(), null); //this is the lie 108
>
> }
>
>
> }
>
>
>
>
>
> ImageUtil.java
>
> public class ImageUtil {
>
> public static void loadImage(String path, ImageLoadingListener listener) {
> ImageLoader loader = ImageLoader.getInstance();
> try {
> loader.loadImage(path, DEFAULT_DISPLAY_IMAGE_OPTIONS, listener);
> } catch (OutOfMemoryError e) {
> e.printStackTrace();
> }
> }
>
>
> }
>
>
> After i search the internet i fount out this link1
> <http://stackoverflow.com/questions/17737858/android-imageloader-must-be-init-with-configuration-before-using-in-uil>
> link
> 2 <http://stackoverflow.com/questions/32560751/android-image-loader-error>,
> but i didnot understand how to implement it. Can you please help me??
>
>
> Also i have this error some times,can you provide me any solution.
>
> Exception java.lang.OutOfMemoryError: Failed to allocate a 79888 byte
> allocation with 10833 free bytes and 10KB until OOM
> java.lang.String.<init> (String.java:233)
> libcore.io.IoUtils$FileReader.toString (IoUtils.java:274)
> libcore.io.IoUtils.readFileAsString (IoUtils.java:116)
> com.android.org.conscrypt.CertPinManager.readPinFile (CertPinManager.java
> :120)
> com.android.org.conscrypt.CertPinManager.ensureInitialized
> (CertPinManager.java:92)
> com.android.org.conscrypt.CertPinManager.lookup (CertPinManager.java:136)
> com.android.org.conscrypt.CertPinManager.isChainValid (CertPinManager.java
> :72)
> com.android.org.conscrypt.TrustManagerImpl.checkTrusted
> (TrustManagerImpl.java:302)
> com.android.org.conscrypt.TrustManagerImpl.checkServerTrusted
> (TrustManagerImpl.java:219)
> com.android.org.conscrypt.Platform.checkServerTrusted (Platform.java:113)
> com.android.org.conscrypt.OpenSSLSocketImpl.verifyCertificateChain
> (OpenSSLSocketImpl.java:540)
> com.android.org.conscrypt.NativeCrypto.SSL_do_handshake (NativeCrypto.java)
> com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake
> (OpenSSLSocketImpl.java:307)
> com.android.okhttp.Connection.upgradeToTls (Connection.java:201)
> com.android.okhttp.Connection.connect (Connection.java:155)
> com.android.okhttp.internal.http.HttpEngine.connect (HttpEngine.java:282)
> com.android.okhttp.internal.http.HttpEngine.sendRequest (HttpEngine.java
> :216)
> com.android.okhttp.internal.http.HttpURLConnectionImpl.execute
> (HttpURLConnectionImpl.java:382)
> com.android.okhttp.internal.http.HttpURLConnectionImpl.connect
> (HttpURLConnectionImpl.java:106)
> com.android.okhttp.internal.http.HttpURLConnectionImpl.getOutputStream
> (HttpURLConnectionImpl.java:208)
> com.android.okhttp.internal.http.DelegatingHttpsURLConnection.getOutputStream
> (DelegatingHttpsURLConnection.java:218)
> com.android.okhttp.internal.http.HttpsURLConnectionImpl.getOutputStream
> (HttpsURLConnectionImpl.java:25)
> bme.a (:com.google.android.gms.DynamiteModulesC:27)
> blt.a (:com.google.android.gms.DynamiteModulesC:40)
> blz.a (:com.google.android.gms.DynamiteModulesC:5055)
> blz.run (:com.google.android.gms.DynamiteModulesC:54)
> java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java
> :1112)
> java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java
> :587)
> java.lang.Thread.run (Thread.java:818)
> VM free: 69.49KB
> VM total: 128MB
> VM max: 128MB
>
> Thank you in advance
>
>
>
>
>
--
You received this message because you are subscribed to the Google Groups
"Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/android-developers.
To view this discussion on the web visit
https://groups.google.com/d/msgid/android-developers/fda35245-1543-4bf1-83ca-5dcf032b672d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.