Tirar foto secretamente do android sem abrir programas em Java
Posted: 19 Jun 2020, 04:34
Esse código que vou mandar é tosco mas é muito requerido para software de segurança que precisam tirar foto da cara do vagabundo que roubou o celular, para isso use essa função e o que não tiver, vai dando alt+ENTER no IDE para ir importando as classes, recomendo colocar esse método dentro de um Runnable e usar de lá, mas isso é contigo! Eu não irei implementar o código que pede as permissões do android moderno, você mesmo em em apps e notificações, procurar o seu app com essa função e dar a permissão manualmente se a permissão foi prevista no seu AndroidManifest.xml
Code: Select all
public void TiraFotoSecretamente()
{
int daCameraDaFrenteDoCelularTingLing = 1;
Camera camera = null;
Camera.CameraInfo cameraInfo = new Camera.CameraInfo();
Camera.getCameraInfo(daCameraDaFrenteDoCelularTingLing, cameraInfo);
Log.d("javinha:", "Preparativos para tirar foto ok.");
Log.d("javinha:", "Use as permissoes no manifest android.permission.CAMERA , android.permission.WRITE_EXTERNAL_STORAGE e android.permission.READ_EXTERNAL_STORAGE");
try {
camera = Camera.open(daCameraDaFrenteDoCelularTingLing);
} catch (RuntimeException e) {
Log.d("javinha:", "A camera maldita da frente nao abre, nao existe ou falta dar pemisssoes!");
camera = null;
}
try{
if (null == camera) {
Log.d("javinha:", "Nao consegui criar o objeto camera, veja a versao do android");
} else {
Log.d("javinha:", "Tentando criar a textura");
try {
camera.setPreviewTexture(new SurfaceTexture(0));
camera.startPreview();
}
catch (Exception e) {
Log.d("javinha:", "Eu nao consegui me entender com setPreviewTexture, veja permissoes do manifest: ");
e.printStackTrace();
}
camera.takePicture(null, null, new Camera.PictureCallback() {
@Override
public void onPictureTaken(byte[] lixoDeBits, Camera camera) {
Log.d("javinha:", " Dentro da classe Camera.PictureCallback metodo onPictureTaken esperando... ");
String pastinhaRaiz = Environment.getExternalStorageDirectory().getAbsolutePath() + "/" ;
File pastaOndeVouSalvarSuaCaraDeMerda=new File(pastinhaRaiz);
SimpleDateFormat dateFormat = new SimpleDateFormat("ddMMyyyy_HHmmss");
String date = dateFormat.format(new Date());
String arquivoFotoDaCara = "BOZONARO_" + "_" + date + ".jpg";
String arquivoFinal = pastaOndeVouSalvarSuaCaraDeMerda.getPath() + File.separator + arquivoFotoDaCara;
Log.d("javinha:", "OLHA: arquivo a ser usado pra salvar sua cara ---> " + arquivoFinal);
try {
FileOutputStream fstream = new FileOutputStream(arquivoFinal);
fstream.write(lixoDeBits);
fstream.close();
Log.d("javinha:", "PARABENS +++++: foto de mulher pelada salva em ---> " + arquivoFinal);
}
catch (Exception error) {
Log.d("javinha:", "Nao consegui salvar a foto, veja as permissoes e em apps e mandroidmanifest");
}
camera.release();
}
});
}
}
catch(Exception e){
camera.release();
}
}