android4.4 获取符合默认短信应用要求的短信应用包名

本文介绍了在Android 4.4系统中,如何在应用程序内获取符合默认短信应用要求的包名,并实现让用户在应用内部切换默认短信应用的方法。主要涉及的关键步骤包括获取符合条件的应用信息和包名,以及如何设置默认短信应用。

android 4.4有一坨更新,短信机制改变是更新里面的一项重头戏

怎样让短信应用适用于4.4官网那篇博客已经被翻译然后转载了N遍,我就随便贴一个链接上来吧4.4短信应用变更


这里我不是要说明怎样去设置短信应用,下面要说的是一个比较小众的需求,就是如何在你自己的应用里面让用户将默认短信应用切换到别的应用(或者是在你自己的app里面让用户选择默认短信应用,就不用跑到设置里面的“更过“中去找到那玩意儿再选择了)


设置默认短信应用的思路就是: 获取符合要求的应用的信息 -- 获取这些应用的包名 -- 根据包名来设置默认短信应用


前面两步是关键,第三步可以参照上面4.4短信应用变更


我就抛砖引玉一下,这个方法不是很完善,你可以根据4.4默认短信的特征来进行再深度的筛选


代码如下:

/**
	 * 获取默认短信应用的包名数组
	 * @return
	 */
	private String[] getSmsApps(){
		PackageManager pm = this.getPackageManager();
		Intent intent = new Intent();
		intent.setAction("android.provider.Telephony.SMS_DELIVER");
		List<ResolveInfo> receivers = pm.queryBroadcastReceivers(intent, PackageManager.GET_INTENT_FILTERS);
		String[] result = new String[receivers.size()];
		for (int i = 0; i < receivers.size(); i++) {
			result[i] = receivers.get(i).activityInfo.packageName;
		}
		return result;
	}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值