Quero usar a foto tirada em uma nova activity, mas o app fecha apos tirar foto.
CÓDIGO.
package believe.com.br.believeundb;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.provider.MediaStore;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
public class primeiraTela extends AppCompatActivity {
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_primeira_tela);
Button botaocan = findViewById(R.id.botaoCanid);
botaocan.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, 0);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Bitmap bitmap = (Bitmap) data.getExtras().get("data");
imageView.setImageBitmap(bitmap);
if (requestCode == 0) {
if (resultCode == Activity.RESULT_OK) {
Intent fotoinfo = new Intent(this, fotocomInfo.class);
startActivity(fotoinfo);
} else {
}
}
}
}
Você precisa debugar a aplicação e identificar a causa do fechamento.
O erro é este.
E/AndroidRuntime: FATAL EXCEPTION: main
Process: believe.com.br.believeundb, PID: 31982
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=0, result=-1, data=Intent { act=inline-data (has extras) }} to activity {believe.com.br.believeundb/believe.com.br.believeundb.primeiraTela}: java.lang.NullPointerException: Attempt to invoke virtual method ‘void android.widget.ImageView.setImageBitmap(android.graphics.Bitmap)’ on a null object reference
at android.app.ActivityThread.deliverResults(ActivityThread.java:4094)
at android.app.ActivityThread.handleSendResult(ActivityThread.java:4137)
at android.app.ActivityThread.-wrap20(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1529)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6123)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:867)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:757)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method ‘void android.widget.ImageView.setImageBitmap(android.graphics.Bitmap)’ on a null object reference
at believe.com.br.believeundb.primeiraTela.onActivityResult(primeiraTela.java:41)
at android.app.Activity.dispatchActivityResult(Activity.java:6931)
Você está invocando um método de um objeto nulo.
Entendi. Mais nao estou conseguindo achar o metodo onde fica salvo a foto que tirei e jogar em outra activity
Cara, reveja o teu código, afinal, é após tirar a foto que estoura a exceção, logo, deve ser uma chamada posterior ao acionamento da câmera.