public class ToCallPhotoActivity extends ActionBarActivity implements SurfaceHolder.Callback {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_to_call_photo);
android.support.v7.app.ActionBar mActionBar;
mActionBar = getSupportActionBar();
myCamera = Camera.open();
SurfaceView surface = (SurfaceView)findViewById(R.id.surfaceView);
SurfaceHolder holder = surface.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
holder.setFixedSize(400,300);
protected void onResume() {
myCamera = Camera.open();
public void surfaceCreated(SurfaceHolder holder)
myCamera.setPreviewDisplay(holder);
Camera.Parameters photocameraParams = myCamera.getParameters();
photocameraParams.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
photocameraParams.setJpegQuality(100);
photocameraParams.setFlashMode(Camera.Parameters.FLASH_MODE_AUTO);
myCamera.setParameters(photocameraParams);
myCamera.takePicture(null, null, jpegCallback);
public void surfaceDestroyed(SurfaceHolder holder)
public void surfaceChanged(SurfaceHolder holder, int format, int width, int height)
Camera.ShutterCallback shutterCallback = new Camera.ShutterCallback() {
public void onShutter() {
Camera.PictureCallback rawCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] data, Camera Camera) {
Camera.PictureCallback jpegCallback = new Camera.PictureCallback() {
public void onPictureTaken(byte[] data, Camera Camera) {
FileOutputStream outStream = null;
File folder = new File(Environment.getExternalStorageDirectory().toString()+"/FromWearInputPhoto");
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
"/sdcard/FromWearInputPhoto";
String photoNameSavePath = "/sdcard/FromWearInputPhoto/"+ timeStamp + ".jpg";
Log.d("SpeechAndDoApp","FOTO SCATTATA");
outStream = new FileOutputStream(photoNameSavePath);
MediaScannerConnection.scanFile(getBaseContext(),
new String[] { photoNameSavePath }, null,
new MediaScannerConnection.OnScanCompletedListener() {
public void onScanCompleted(String path, Uri uri) {
Log.i("ExternalStorage", "Scanned " + path + ":");
Log.i("ExternalStorage", "-> uri=" + uri);
} catch (FileNotFoundException e) {
Log.e("TAG", "File Note Found", e);
} catch (IOException e) {
Log.e("TAG", "IO Exception", e);
public void wakeUpDevice()
PowerManager powerDeviceManager = (PowerManager) getApplicationContext().getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wakeLock = powerDeviceManager.newWakeLock((PowerManager.SCREEN_BRIGHT_WAKE_LOCK | PowerManager.FULL_WAKE_LOCK | PowerManager.ACQUIRE_CAUSES_WAKEUP), "TAG");
public void disableLockScreen()
KeyguardManager keyguardManager = (KeyguardManager)getSystemService(Activity.KEYGUARD_SERVICE);
KeyguardManager.KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_to_call_photo, menu);
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_settings) {
return super.onOptionsItemSelected(item);