1.虚拟短信应用场景:
急着脱身?应付老婆(老公、男女朋友查岗)?
使用虚拟通话短信吧。您只需通过简单设置,软件就会在指定时间会模拟一个“真实”来电或短信来迷惑对方,通过“真实”的证据让对方相信你,借此脱身!也是应付检查、朋友之间搞笑的利器,锁屏状态下可也虚拟来点哦。
2.下面通过实例案例演示其逻辑原理,如下:
(1)新建一个Android工程,命名为”虚拟短信",如下:
(2)UI不编辑,主要设计MainActivity,如下:
1 package com.himi.virtualsms; 2 3 import android.app.Activity; 4 import android.content.ContentResolver; 5 import android.content.ContentValues; 6 import android.net.Uri; 7 import android.os.Bundle; 8 import android.view.Menu; 9 import android.view.MenuItem; 10 import android.widget.TimePicker; 11 12 public class MainActivity extends Activity { 13 14 @Override 15 protected void onCreate(Bundle savedInstanceState) { 16 super.onCreate(savedInstanceState); 17 setContentView(R.layout.activity_main); 18 19 20 new Thread(){ 21 public void run() { 22 try { 23 Thread.sleep(10000); 24 25 } catch (InterruptedException e) { 26 // TODO 自动生成的 catch 块 27 e.printStackTrace(); 28 } 29 ContentResolver resolver = getContentResolver(); 30 Uri uri = Uri.parse("content://sms/"); 31 ContentValues values = new ContentValues(); 32 values.put("address","95533" ); 33 values.put("date", System.currentTimeMillis()); 34 values.put("type", 1); 35 values.put("body", "你的账户余额是¥100,000,000,000元"); 36 resolver.insert(Uri.parse("content://sms/"), values); 37 }; 38 }.start(); 39 40 41 } 42 43 }
其实逻辑实现是很简单的。
(3)特别注意在AndroidMainfest.xml文件,添加权限:
1 <?xml version="1.0" encoding="utf-8"?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com.himi.virtualsms" 4 android:versionCode="1" 5 android:versionName="1.0" > 6 7 <uses-sdk 8 android:minSdkVersion="15" 9 android:targetSdkVersion="17" /> 10 <uses-permission android:name="android.permission.SEND_SMS"/> 11 <uses-permission android:name="android.permission.WRITE_SMS"/> 12 13 <application 14 android:allowBackup="true" 15 android:icon="@drawable/ic_launcher" 16 android:label="@string/app_name" 17 android:theme="@style/AppTheme" > 18 <activity 19 android:name=".MainActivity" 20 android:label="@string/app_name" > 21 <intent-filter> 22 <action android:name="android.intent.action.MAIN" /> 23 24 <category android:name="android.intent.category.LAUNCHER" /> 25 </intent-filter> 26 </activity> 27 </application> 28 29 </manifest>