I am working on a android application project using xampp(service.php and mysql database). When I am compiling the application the emulator shows app has stopped. When I saw the run tab the following below errors show up. I don't know how solve this issue. and don't know where the error is occurring. I am seeking help from you guys. Thanks in advanced.
Error:
E/AndroidRuntime: FATAL EXCEPTION: main Process: com.project.newsapp, PID: 27328 java.lang.RuntimeException: Canvas: trying to draw too large(309746632bytes) bitmap. at android.view.DisplayListCanvas.throwIfCannotDraw(DisplayListCanvas.java:229) at android.view.RecordingCanvas.drawBitmap(RecordingCanvas.java:97) at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:529) at android.widget.ImageView.onDraw(ImageView.java:1367) at android.view.View.draw(View.java:19123) at android.view.View.updateDisplayListIfDirty(View.java:18073) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.updateDisplayListIfDirty(View.java:18064) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.updateDisplayListIfDirty(View.java:18064) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.updateDisplayListIfDirty(View.java:18064) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.updateDisplayListIfDirty(View.java:18064) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.updateDisplayListIfDirty(View.java:18064) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.updateDisplayListIfDirty(View.java:18064) at android.view.View.draw(View.java:18851) at android.view.ViewGroup.drawChild(ViewGroup.java:4214) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:4000) at android.view.View.draw(View.java:19126) at com.android.internal.policy.DecorView.draw(DecorView.java:785) at android.view.View.updateDisplayListIfDirty(View.java:18073) at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:643) at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:649) at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:757) at android.view.ViewRootImpl.draw(ViewRootImpl.java:2980) at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2794) at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2347) at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1386) at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6733) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911) at android.view.Choreographer.doCallbacks(Choreographer.java:723) at android.view.Choreographer.doFrame(Choreographer.java:658) at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897) at android.os.Handler.handleCallback(Handler.java:789) at android.os.Handler.dispatchMessage(Handler.java:98) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6541) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
My MainActivity.kt file code
Kotlin
package com.project.newsapp import android.app.ProgressDialog import android.content.Intent import android.content.SharedPreferences import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import com.project.newsapp.contract.Request import com.project.newsapp.contract.Response import com.project.newsapp.network.IRequestContract import com.project.newsapp.network.NetworkClient import com.project.newsapp.utils.Constant import com.project.newsapp.utils.showToast import kotlinx.android.synthetic.main.activity_main.* import retrofit2.Call import retrofit2.Callback class MainActivity : AppCompatActivity(), Callback<Response> { private val retrofitClient = NetworkClient.getNetworkClient() private val requestContract = retrofitClient.create(IRequestContract:: class .java) private val progressDialog:ProgressDialog by lazy { ProgressDialog( this ) } private val sharedPreferences:SharedPreferences by lazy { getSharedPreferences(Constant.PREF_NAME, MODE_PRIVATE) } lateinit var userName: String override fun onCreate(savedInstanceState: Bundle?) { super .onCreate(savedInstanceState) setContentView(R.layout.activity_main) progressDialog.setMessage( " Please wait..." ) progressDialog.setCancelable( true ) checkIfUserAlreadyRegistered() btnRegister.setOnClickListener { userName = edUserName.text.toString().trim().uppercase() if (userName.isNullOrEmpty()){ showToast( " Please Enter your Name" ) } else { progressDialog.show() val request = Request( action = Constant.REGISTER_USER, userName = userName val callResponse = requestContract.makeApiCall(request) callResponse.enqueue( this ) /* btnExit.setOnClickListener { finish() override fun onFailure(call: Call<Response>, t: Throwable) { if (progressDialog.isShowing) progressDialog.dismiss() showToast( " Server is not responding. Please try again later." ) edUserName.setText( " " ) override fun onResponse(call: Call<Response>, response: retrofit2.Response<Response>) { if (progressDialog.isShowing) progressDialog.dismiss() if (response.body()!=null){ val serverResponse = response.body() if (serverResponse!!.status){ saveUserToPref(serverResponse.userId,userName) Intent( this , HomeActivity:: class .java).apply { putExtra(Constant.KEY_USER_ID, serverResponse.userId) putExtra(Constant.KEY_USER_NAME, userName) startActivity( this ) finish() } else { showToast(serverResponse.message) edUserName.setText( " " ) else { showToast( " Server is not responding. Please try again later." ) edUserName.setText( " " ) private fun saveUserToPref(userId: String , userName: String ){ val editor = sharedPreferences.edit() editor.putString(Constant.KEY_USER_ID,userId) editor.putString(Constant.KEY_USER_NAME,userName) editor.commit() private fun checkIfUserAlreadyRegistered(){ val userId = sharedPreferences.getString(Constant.KEY_USER_ID, " invalid user id" ) val userName = sharedPreferences.getString(Constant.KEY_USER_NAME, " invalid user name" ) if (!userId.contentEquals( " invalid user id" ) && !userName.contentEquals( " invalid user name" )){ Intent( this , HomeActivity:: class .java).apply { putExtra(Constant.KEY_USER_ID, userId) putExtra(Constant.KEY_USER_NAME, userName) startActivity( this ) finish() What I have tried:
I tried running HomeActivity as first screen, in that case app is working fine but when I make MainActivity the first screen it show app has stopped.
  • Read the question carefully.
  • Understand that English isn't everyone's first language so be lenient of bad spelling and grammar.
  • If a question is poorly phrased then either ask for clarification, ignore it, or edit the question and fix the problem. Insults are not welcome.
  • Don't tell someone to read the manual. Chances are they have and don't get it. Provide an answer or move on to the next question. Let's work to help developers, not make them feel stupid.
  •