android获取其他应用的内容,Android中接受来自其他应用的内容

Mainfest 文件代码:

范例:

void onCreate (Bundle savedInstanceState) {

...

// 获取 intent、 action 以及 MIME 类型,这些是一个意图的主要内容

Intent intent = getIntent();

String action = intent.getAction();

String type = intent.getType();

if (Intent.ACTION_SEND.equals(action) && type != null) {

if ("text/plain".equals(type)) {

handleSendText(intent); // 处理收到的文本

} else if (type.startsWith("image/")) {

handleSendImage(intent); // 处理收到的图像

}

} else if (Intent.ACTION_SEND_MULTIPLE.equals(action) && type != null) {

if (type.startsWith("image/")) {

handleSendMultipleImages(intent); // 处理收到的多个图像

}

} else {

// 还可以添加其他类型意图的处理

}

...

}

void handleSendText(Intent intent) {

String sharedText = intent.getStringExtra(Intent.EXTRA_TEXT);

if (sharedText != null) {

// 更新 UI 来反映收到的内容

}

}

void handleSendImage(Intent intent) {

Uri imageUri = (Uri) intent.getParcelableExtra(Intent.EXTRA_STREAM);

if (imageUri != null) {

// 更新 UI 来反映收到的内容

}

}

void handleSendMultipleImages(Intent intent) {

ArrayList imageUris = intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);

if (imageUris != null) {

// 更新 UI 来反映收到的内容

}

}

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

voidonCreate(BundlesavedInstanceState){

...

// 获取 intent、 action 以及 MIME 类型,这些是一个意图的主要内容

Intentintent=getIntent();

Stringaction=intent.getAction();

Stringtype=intent.getType();

if(Intent.ACTION_SEND.equals(action)&&type!=null){

if("text/plain".equals(type)){

handleSendText(intent);// 处理收到的文本

}elseif(type.startsWith("image/")){

handleSendImage(intent);// 处理收到的图像

}

}elseif(Intent.ACTION_SEND_MULTIPLE.equals(action)&&type!=null){

if(type.startsWith("image/")){

handleSendMultipleImages(intent);// 处理收到的多个图像

}

}else{

// 还可以添加其他类型意图的处理

}

...

}

voidhandleSendText(Intentintent){

StringsharedText=intent.getStringExtra(Intent.EXTRA_TEXT);

if(sharedText!=null){

// 更新 UI 来反映收到的内容

}

}

voidhandleSendImage(Intentintent){

UriimageUri=(Uri)intent.getParcelableExtra(Intent.EXTRA_STREAM);

if(imageUri!=null){

// 更新 UI 来反映收到的内容

}

}

voidhandleSendMultipleImages(Intentintent){

ArrayListimageUris=intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);

if(imageUris!=null){

// 更新 UI 来反映收到的内容

}

}

说明:通过在 Manifest 文件中声明相应的意图过滤器,就可以接收来自其他应用的数据以供在自己的应用中进行处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值