在之前Intent章节中新建一个Aty
并在Mainfest文件中设置:
<activity android:name=".MyAty1" android:label="MyAty1">
<intent-filter>
<category android:name="android.intent.category.DEFAULT"/>
<action android:name="com.example.nick.learnintent.intent.action.Myaty"/>
<data android:scheme="app"/>
</intent-filter>
</activity>
如此通过APP1中按钮访问,则会弹出选项询问访问Myaty or Myaty1
若要精确访问特定Myaty,则需要根据scheme参数
在APP1中MainActivity:
findViewById(R.id.btnStartMyaty).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {//捕捉错误信息
startActivity(new Intent("com.example.nick.learnintent.intent.action.Myaty",Uri.parse("app://Hello")));//访问另一个APP的页面
}catch ( Exception e){
Toast.makeText(MainActivity.this,"无法启动指定的ACT",Toast.LENGTH_SHORT).show();//错误信息显示
通过Uri.parse(“app://Hello”)实现
浏览器访问
需在mainfest中设置:
<activity android:name=".LocalAppAty">//获取网页信息需要设置的内容
<intent-filter>
<category android:name="android.intent.category.APP_BROWSER"/>
<category android:name="android.intent.category.DEFAULT"/>
<action android:name="android.intent.action.VIEW"/>
<data android:scheme="app"/>
</intent-filter>
</activity>
在Aty中:
Uri uri =getIntent().getData();
System.out.print(uri);//获取网页传递到APP的信息