@Override protected void onResume() { super.onResume(); final String intentAnswerId = getIntent().getExtras().getString(INTENT_ANSWER_EXTRA); IntentAnswer.getIntentAnswer( intentAnswerId, new GetCallback<IntentAnswer>() { @Override public void done(IntentAnswer intentAnswer, ParseException error) { if (error == null) { updateView(intentAnswer); } else { Log.e(TAG, "Cannot load intent", error); // Let's update the data and try again fetchIntentAnswer(intentAnswerId); } } }); registerNotificationReceiver(); ActionLog.log("resumed intent answer activity", intentAnswerId); AppEventsLogger.activateApp(this); }
@Override protected void onPause() { super.onPause(); // Save read flag intentAnswer.saveInBackground(); if (newMessageListener != null) { messagesRef.removeEventListener(newMessageListener); } if (chatStatusListener != null) { friendTypingRef.removeEventListener(chatStatusListener); } if (onlineStatusListener != null) { friendOnlineRef.removeEventListener(onlineStatusListener); } if (userTypingRef != null) { userTypingRef.setValue(false); } if (receiver != null) { unregisterReceiver(receiver); } ActionLog.log("paused intent answer activity"); AppEventsLogger.deactivateApp(this); }
@Override protected void onActivityResult(int requestCode, int resultCode, android.content.Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == RESULT_OK && requestCode == REQUEST_SELECT_FILE && data != null) { ActionLog.log("chose photo from gallery"); Uri selectedImageUri = data.getData(); String tempPath = FileTools.getRealPathFromURI(this, selectedImageUri); sendImageMessage(tempPath); } if (requestCode == REQUEST_TAKE_PHOTO && resultCode == RESULT_OK) { ActionLog.log("took photo"); sendImageMessage(mCurrentPhotoPath); } }
private void sendImageMessage(String tempPath) { try { messagesFragment.sendImageMessage(tempPath); } catch (IOException e) { ActionLog.logException("Cannot read image"); Log.e(TAG, "Cannot read image", e); Dialogs.showError(this, getString(R.string.cannot_read_image)); } }
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { // Respond to the action bar's Up/Home button case android.R.id.home: android.content.Intent upIntent = NavUtils.getParentActivityIntent(this); if (NavUtils.shouldUpRecreateTask(this, upIntent)) { TaskStackBuilder.create(this).addNextIntentWithParentStack(upIntent).startActivities(); } else { NavUtils.navigateUpTo(this, upIntent); } return true; case R.id.action_from_gallery: ActionLog.log("gallery opened"); openGallery(); return true; case R.id.action_take_photo: ActionLog.log("camera opened"); dispatchTakePictureIntent(); return true; } return super.onOptionsItemSelected(item); }