use of org.eyeseetea.malariacare.phonemetadata.PhoneMetaData in project pictureapp by EyeSeeTea.
the class ConvertToSDKVisitor method logEmptySurveyException.
public static void logEmptySurveyException(Survey survey) {
PhoneMetaData phoneMetaData = Session.getPhoneMetaData();
String info = String.format("Survey: %s\nPhoneMetaData: %s\nAPI: %s", survey.toString(), phoneMetaData == null ? "" : phoneMetaData.getPhone_metaData(), Build.VERSION.RELEASE);
Crashlytics.logException(new Throwable(info));
}
use of org.eyeseetea.malariacare.phonemetadata.PhoneMetaData in project pictureapp by EyeSeeTea.
the class BaseActivity method onRequestPermissionsResult.
/**
* Its called on the requestPermission results, if the user accepts the permissions it request
* the Phone permission and gets the phoneMetadata
*/
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {
if (Permissions.processAnswer(requestCode, permissions, grantResults)) {
EyeSeeTeaApplication.permissions.requestNextPermission();
if (EyeSeeTeaApplication.permissions.areAllPermissionsGranted()) {
PhoneMetaData phoneMetaData = getPhoneMetadata();
Session.setPhoneMetaData(phoneMetaData);
}
} else {
onDestroy();
}
}
use of org.eyeseetea.malariacare.phonemetadata.PhoneMetaData in project pictureapp by EyeSeeTea.
the class ConvertToSDKVisitor method buildControlDataElements.
/**
* Builds several datavalues from the mainScore of the survey
*/
private void buildControlDataElements(Survey survey, EventExtended event) {
//save phonemetadata
PhoneMetaData phoneMetaData = Session.getPhoneMetaData();
buildAndSaveDataValue((PreferencesState.getInstance().getContext().getString(R.string.control_data_element_phone_metadata)), phoneMetaData.getPhone_metaData(), event);
//save Time capture
if (PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_capture) != null && !PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_capture).equals("")) {
buildAndSaveDataValue(PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_capture), EventExtended.format(survey.getCompletionDate(), EventExtended.DHIS2_GMT_DATE_FORMAT), event);
}
//save Time Sent
if (PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_sent) != null && !PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_sent).equals("")) {
buildAndSaveDataValue(PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_sent), EventExtended.format(new Date(), EventExtended.DHIS2_GMT_DATE_FORMAT), event);
}
}
use of org.eyeseetea.malariacare.phonemetadata.PhoneMetaData in project pictureapp by EyeSeeTea.
the class BaseActivity method getPhoneMetadata.
PhoneMetaData getPhoneMetadata() {
PhoneMetaData phoneMetaData = new PhoneMetaData();
TelephonyManager phoneManagerMetaData = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String imei = phoneManagerMetaData.getDeviceId();
String phone = phoneManagerMetaData.getLine1Number();
String serial = phoneManagerMetaData.getSimSerialNumber();
phoneMetaData.setImei(imei);
phoneMetaData.setPhone_number(phone);
phoneMetaData.setPhone_serial(serial);
phoneMetaData.setBuild_number(Utils.getCommitHash(getApplicationContext()));
return phoneMetaData;
}
use of org.eyeseetea.malariacare.phonemetadata.PhoneMetaData in project pictureapp by EyeSeeTea.
the class PushClient method prepareCompositeScores.
private JSONArray prepareCompositeScores(JSONArray values) throws Exception {
//Cleans score
ScoreRegister.clear();
//Prepare scores info
List<CompositeScore> compositeScoreList = ScoreRegister.loadCompositeScores(survey);
//1 CompositeScore -> 1 dataValue
for (CompositeScore compositeScore : compositeScoreList) {
values.put(prepareValue(compositeScore));
}
PhoneMetaData phoneMetaData = Session.getPhoneMetaData();
values.put(prepareDataElementValue((PreferencesState.getInstance().getContext().getString(R.string.control_data_element_phone_metadata)), phoneMetaData.getPhone_metaData()));
if (PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_capture) != null && !PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_capture).equals("")) {
values.put(prepareDataElementValue(PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_capture), EventExtended.format(survey.getCompletionDate(), EventExtended.AMERICAN_DATE_FORMAT)));
}
if (PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_sent) != null && !PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_sent).equals("")) {
values.put(prepareDataElementValue(PreferencesState.getInstance().getContext().getString(R.string.control_data_element_datetime_sent), EventExtended.format(new Date(), EventExtended.AMERICAN_DATE_FORMAT)));
}
return values;
}
Aggregations