Intent intent=new Intent(MyActivity.this,TAct.class);
Intent intent=new Intent(); intent.setComponent(new ComponentName(getPackageName(),"com.example.AndroidTest_01.TAct"));//全路径
Intent intent=new Intent("con.example.AndroidTest_01.action.test");
//或者
Intent intent=new Intent();
intent.setAction("con.example.AndroidTest_01.action.test");
Intent intent=new Intent(); intent.setData(Uri.parse("scheme://host:port/path"));
ComponentName componentName=intent.resolveActivity(getPackageManager()); if(componentName==null){ //..没法解析 }
intent.putExtra("a","sss");
Bundle bundle=new Bundle(); bundle.putString("title","aaaaa"); intent.putExtra("a",bundle);
Bundle是Android中一个数据结构优化机制类,与Java中的Map同样,可是Bundle更加高效,在Android中通常不使用Map,是用Bundle代替Mapandroid
public class Modle1 implements Serializable { }
Intent intent=new Intent(MyActivity.this,TAct.class); intent.putExtra("a",new Modle1());
Serializable接口中已经封装了序列化机制,不须要开发者本身去实现,使用很是简单,可是在Android中不适合使用,其内部一套序列化机制是针对全部类型封装的,是Java提供的一个通用接口,效率较低程序员
public class Modle2 implements Parcelable { private String name; public Modle2(String name){ this.name=name; } @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel dest, int flags) { dest.writeString(this.name); } public static final Creator<Modle2> CREATOR=new Creator<Modle2>() { @Override public Modle2 createFromParcel(Parcel source) { return new Modle2(source.readString()); } @Override public Modle2[] newArray(int size) { return new Modle2[size]; } }; }
须要本身实现序列化机制,同时须要建立一个公共静态终态Creator类型成员属性CREATOR,Parcelable是Android提供的一种序列化机制,是彻底用于Android开发的,所以效率较Serializable高出不少,一般使用Parcelable来进行自定义类型参数传递浏览器
intent.setData(Uri.parse("scheme://host:port/path?a=sss&b=adsa"));
经过intent的Data来传递数据,相似url传参数据结构
Intent intent=getIntent(); String s=intent.getStringExtra("aa"); //或者 Bundle b=intent.getExtras();
自定义传递参数app
Intent intent=getIntent(); Modle1 m= (Modle1) intent.getSerializableExtra("a"); //或者 Modle2 modle2=intent.getParcelableExtra("a");
Data传递参数ide
Intent intent=getIntent(); Uri uri=intent.getData(); String a=uri.getQueryParameter("a");
<intent-filter> <category android:name="ANDROID.INTENT.CATEGORY.APP_BROWSER"></category> <action android:name="ANDROID.INTENT.ACTION.VIEW"></action> <category android:name="ANDROID.INTENT.CATEGORY.DEFAULT"></category> </intent-filter>
<data android:scheme="aa"></data>
添加协议,路由,ip等,只要知足需求的url都会启动该Activity优化
<intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter>