Android6.0短信装逼生成器
来源:互联网 发布:东欧现状知乎 编辑:程序博客网 时间:2024/06/06 02:14
在朋友圈里,经常有人晒跑车,晒豪宅,很难过。我作为一个屌丝并没有这些硬货,晒不过他们,只能用一身技术安慰一下自己,或者说欺骗一下自己。
基本上就是这样的:
魅族手机在检测到银行发过来的短信的时候回自动帮你生成这样好看的界面,使得这欺骗自己的短信显的更加真实。上面的字都是可以自己改的,支付宝扣款50w确实不合理,所以当年装逼的时候一下子就被老铁们识破了,很伤心。
基本上做一个短信app是非常简单的,特别是在4.2之前,可以截获短信,可以写短信到数据库里去。一般的android开发者都是知道短信信息都是存在数据库里,简单的几行代码就可以进行读写。后来Google官方发现,这样子搞不行,很多恶意app会生成一些短信来欺骗用户去点击,甚至可能直接发送扣款短信之类的。Google官方在4.4和5.0都做了权限的升级。后来就变成现在这个样子:接受短信的时候,其他的app还是可以通过广播之类的方式接收的短信,但是只能读取数据不能修改。而且无论怎么样,短信都会原封不动地在系统的信息app中出现。除了系统的信息app,所有的app都不能进行短信发送,申请了权限也只是把信息填入到信息app的发送框中,最终能不能发送都是看用户的。
这样子搞,方向就很明确了。如果我要做一个模拟银行发送过来的短信,就必须首先做一个可以成为系统信息app的app。
@TargetApi(Build.VERSION_CODES.KITKAT) public void setDefault(View view){ Intent intent = new Intent(Telephony.Sms.Intents.ACTION_CHANGE_DEFAULT); intent.putExtra(Telephony.Sms.Intents.EXTRA_PACKAGE_NAME, getPackageName()); startActivity(intent); } @TargetApi(Build.VERSION_CODES.KITKAT) public void reset(View view){ System.out.println("reset"); Intent intent = new Intent(Telephony.Sms.Intents.ACTION_CHANGE_DEFAULT); intent.putExtra(Telephony.Sms.Intents.EXTRA_PACKAGE_NAME,mDefaultSmsApp); startActivity(intent); }
这个基本上就是向系统申请成为系统信息app的代码。
成功之后就是写入自己想要的信息了。
private void sendSMS(String phone,String content){ try { ContentValues values = new ContentValues(); values.put("address", phone); values.put("type", "1"); values.put("read", "0"); values.put("body", content); values.put("date", new Date().getTime()); values.put("person", "test"); getApplicationContext().getContentResolver() .insert(Uri.parse("content://sms/inbox"), values); Log.e(getClass().getSimpleName(),"sendSMS success"); clear(); }catch (Exception e){ Log.e(getClass().getSimpleName(),"sendSMS fail"); } }
然后把系统默认信息app换回来,最后用系统app打开就是最开始我写的样子。
项目已经放在了oschina上:http://git.oschina.net/stuartPounds/SMS_please_yourself/tree/master
欢迎各路大神指正。
- Android6.0短信装逼生成器
- Android6.0短信获取
- Android6.0发送短信Demo
- Android6.0的SMS(短信)源码分析--短信接收
- Android6.0的SMS(短信)源码分析--短信发送
- Android6.0的SMS(短信)源码分析--短信发送
- Android6.0的SMS(短信)源码分析--短信接收
- 分享个绝地求生吃鸡图生成器,装逼利器!!
- Android6.0权限(短信)—问题记录
- Android6.0 短信界面,添加多个收件人名字概率性不显示
- Android6.0下的短信接收与发送功能的实现
- 牛逼 装逼 傻逼 的区别
- 程序员装逼指南 - -
- 高级程序员装逼指南
- 程序员装逼指南
- 高级程序员装逼指南
- 程序员装逼指南
- 高级程序员装逼指南
- h1506动态规划
- Redis的安装和部署
- Axis Webservice框架使用案例
- Kmeans与高斯混合模型的不同
- interceptor(拦截器)与filter(过滤器)的区别
- Android6.0短信装逼生成器
- 学习Javascript闭包(Closure) 个人觉得非常浅显易懂
- 在线笔试-求二叉树中俩个节点的最低共同父节点
- 验证规则
- Universal-Image-Loader从使用到源码分析
- 加班是一把双刃剑
- 阿里云maven仓库配置
- 补码 原码 反码
- Ubuntu开机启动