//一、打开另一个Ativity
//跳转代码如下:
// 打开另一个Activity
public void openSchema(View view) {
Intent intent = new Intent();
// setAction里面的字符串可以自己取,不要用中文,如果不懂怎么取,用包名点类名的方式命名
intent.setAction("com.example.andday06activity_property.OtherActivity");
// 数据格式:schema://authority/path,在另外一页面按这种格式接收
intent.setData(Uri.parse("zhangsan://183123456/resource"));
// "zhangsan"是自己在配置文件中定义的数据类型,
startActivity(intent);
}
//注意:要在AndroidManifest.xml文件中配置过滤器如下:
//自己定义的类型
//获取传过来的数据
Intent intent=getIntent();
Uri uri=intent.getData();
String schema=uri.getScheme();
String authority=uri.getAuthority();
String resource=uri.getPath();
text_orther.setText(schema+":"+authority+":"+resource);
//你传什么类型的数据,在另一边也要按格式接收(Scheme)
二、打开阅读器
// 打开阅读器,比如:即当你想打开一个网址,有多个浏览器提醒你用哪个打开的意思
//可以理解为这个APP调用了另一个APP
public void openreader(View view) {
Intent intent = new Intent();
intent.setAction(intent.ACTION_VIEW);
// 注意:如果你自己定义了阅读器,以下这个就不用设置,在另外一个工程的AndroidManifest.xml配置
// intent.addCategory(category);
intent.setType("text/*");
// 发送的内容
intent.putExtra(intent.EXTRA_TEXT, "你好啊!!");
// intent.EXTRA_TEXT是一个常量,可以自己定义
startActivity(intent);
}
//另一工程的代码:(被调用的APP)
protected void onStart() {
//这个工程就是自己定义的阅读器
// 在这个工程进行AndroidManifest.xml配置,给调用方调用
super.onStart();
//接收调用方的文本数据
Intent intent=getIntent();
String content=intent.getStringExtra(intent.EXTRA_TEXT);
text_info.setText(content);
}
//而且被调用的工程要配置AndroidManifest.xml:如下