package cz.destil.glasquare.util;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.provider.MediaStore;
import android.speech.RecognizerIntent;
import java.util.List;
/**
* Set of intent-related utils.
*
* @author David 'Destil' Vavra (david@vavra.me)
*/
public class IntentUtils {
private static final int SPEECH_REQUEST = 0;
public static final int TAKE_PICTURE_REQUEST = 1;
public static void launchNavigation(Activity activity, double latitude, double longitude, String name) {
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("google.navigation:ll=" + latitude + "," + longitude+"&title="+name));
activity.startActivity(intent);
}
public static void startSpeechRecognition(Activity activity) {
Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
activity.startActivityForResult(intent, SPEECH_REQUEST);
}
public static String processSpeechRecognitionResult(int requestCode, int resultCode, Intent data) {
if (requestCode == SPEECH_REQUEST && resultCode == Activity.RESULT_OK) {
List<String> results = data.getStringArrayListExtra(
RecognizerIntent.EXTRA_RESULTS);
if (results != null && results.size() > 0) {
return results.get(0);
}
}
return null;
}
public static void takePicture(Activity activity) {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
activity.startActivityForResult(intent, TAKE_PICTURE_REQUEST);
}
}