Android编程实现的短信编辑器功能示例
程序员文章站
2023-12-10 19:48:10
本文实例讲述了android编程实现的短信编辑器功能。分享给大家供大家参考,具体如下:
修改短信数据库,从而生成任意手机号发送的短信。
androidmanifest....
本文实例讲述了android编程实现的短信编辑器功能。分享给大家供大家参考,具体如下:
修改短信数据库,从而生成任意手机号发送的短信。
androidmanifest.xml
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.dudon.fakesms"> <uses-permission android:name="android.permission.read_sms" /> <uses-permission android:name="android.permission.write_sms" /> <application android:allowbackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:supportsrtl="true" android:theme="@style/apptheme"> <activity android:name=".mainactivity"> <intent-filter> <action android:name="android.intent.action.main" /> <category android:name="android.intent.category.launcher" /> </intent-filter> </activity> </application> </manifest>
activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <linearlayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <linearlayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <textview android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center" android:text="短信发送者:" android:textsize="18sp" /> <edittext android:id="@+id/get_phone" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="7" android:inputtype="phone" /> </linearlayout> <scrollview android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1"> <edittext android:id="@+id/get_message" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_margin="20dp" android:hint="短信内容" /> </scrollview> <linearlayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <button android:id="@+id/get_time" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" android:text="添加当前时间" /> <button android:id="@+id/send_message" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="4" android:text="发送短信" /> </linearlayout> </linearlayout>
mainactivity.java
public class mainactivity extends appcompatactivity { private int phonenum; private string textsms; private string currenttime; private button sendmessage; private button gettime; private edittext getphone; private edittext getmessage; @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); //注册控件 sendmessage = (button) findviewbyid(r.id.send_message); gettime = (button) findviewbyid(r.id.get_time); getphone = (edittext) findviewbyid(r.id.get_phone); getmessage = (edittext) findviewbyid(r.id.get_message); //获取当前时间 gettime.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { textsms = getmessage.gettext().tostring(); simpledateformat formatter = new simpledateformat("yyyy年mm月dd日 hh时mm分ss秒"); date curdate = new date(system.currenttimemillis());//获取当前时间 currenttime = formatter.format(curdate); textsms = textsms + currenttime; getmessage.settext(textsms); } }); //发送短信 sendmessage.setonclicklistener(new view.onclicklistener() { @override public void onclick(view v) { if (textutils.isempty(getphone.gettext().tostring())) { toast.maketext(mainactivity.this, "电话号码未填写", toast.length_short).show(); return; } if (textutils.isempty(getmessage.gettext().tostring())) { toast.maketext(mainactivity.this, "短信内容未填写", toast.length_short).show(); return; } //获取电话号码和短信内容 phonenum = integer.parseint(getphone.gettext().tostring()); textsms = getmessage.gettext().tostring(); //开启多线程 thread thread = new thread() { @override public void run() { contentresolver resolver = getcontentresolver(); contentvalues values = new contentvalues(); values.put("address", phonenum); values.put("type", 1); values.put("date", system.currenttimemillis()); values.put("body", textsms); resolver.insert(uri.parse("content://sms"), values); } }; thread.start(); toast.maketext(mainactivity.this, "短信成功生成", toast.length_short).show(); } }); } }
运行截图:
更多关于android相关内容感兴趣的读者可查看本站专题:《android短信与电话操作技巧汇总》、《android文件操作技巧汇总》、《android编程之activity操作技巧总结》、《android编程开发之sd卡操作方法汇总》、《android开发入门与进阶教程》、《android资源操作技巧汇总》、《android视图view技巧总结》及《android控件用法总结》
希望本文所述对大家android程序设计有所帮助。