1. make a app as browser, register in AndroidManifest.xml
<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.BROWSABLE"/> <category android:name="andoid.intent.category.DEFAULT" /> <data android:scheme="http"/> </intent-filter>
http://blog.vogella.com/2011/02/21/android-intents/ Registering for Android Intents – Being a crappy browser
2. start another activity
Intent intent = null; intent = new Intent(CurrentActivity.this, AnotherActivity.class); startActivity(intent);
3. start activity for result
static private final int GET_TEXT_REQUEST_CODE = 1;// TODO - Start an Activity using that intent and the request code defined above
Intent explicitIntent = new Intent(CurrentActivity.this,AnotherActivity.class);
startActivityForResult(explicitIntent, GET_TEXT_REQUEST_CODE);
this method onActivityResult() will be called after AnotherActivity return(finish)
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data)
in AnotherActivity: set result and finish
Intent intent = new Intent(); intent.putExtra("hello", input); this.setResult(RESULT_OK, intent); finish();
4. create chooser, let user select from a list of app to handle this request
Intent baseIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com")); Intent chooserIntent = Intent.createChooser(baseIntent, CHOOSER_TEXT); startActivity(chooserIntent);
5. start another application
in current application
startActivity(new Intent("course.labs.permissions.DANGEROUS_ACTIVITY"));
in another application's AndroidManifest.xml
<intent-filter> <action android:name="course.labs.permissions.DANGEROUS_ACTIVITY" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter>