package com.github.captain_miao.agera.tutorial.helper;
import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
public class ActivityNavigation {
public static ActivityNavigation from(final Context context) {
return new ActivityNavigation(context);
}
private ActivityNavigation(final Context context) {
mContext = context;
mIntent = new Intent(Intent.ACTION_VIEW);
}
public ActivityNavigation withExtras(final Bundle extras) {
if(extras == null) {
return this;
}
mIntent.putExtras(extras);
return this;
}
public ActivityNavigation withFlags(final int flags) {
mIntent.addFlags(flags);
return this;
}
public boolean toUri(final String uri) {
if (TextUtils.isEmpty(uri))
return false;
return toUri(Uri.parse(uri));
}
public boolean toUri(final Uri uri) {
final Intent intent = mIntent.setData(uri);
Log.d(TAG, uri.toString());
try {
mContext.startActivity(intent);
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}
private final Context mContext;
private final Intent mIntent;
private static final String TAG = "ActivityNavigation";
}