本文实例讲述了Android短信发送器实现方法。分享给大家供大家参考。具体如下:
这里模拟android短信发送器的实现
AndroidManifest.xml清单文件:
<?xml version=\"1.0\" encoding=\"utf-8\"?> <manifest xmlns:android=\"http://schemas.android.com/apk/res/android\" package=\"com.ljq.sms\" android:versionCode=\"1\" android:versionName=\"1.0\"> <application android:icon=\"@drawable/icon\" android:label=\"@string/app_name\"> <activity android:name=\".MainActivity\" android:label=\"@string/app_name\"> <intent-filter> <action android:name=\"android.intent.action.MAIN\" /> <category android:name=\"android.intent.category.LAUNCHER\" /> </intent-filter> </activity> </application> <uses-sdk android:minSdkVersion=\"7\" /> <uses-permission android:name=\"android.permission.SEND_SMS\"/> </manifest>
main.xml布局文件:
<?xml version=\"1.0\" encoding=\"utf-8\"?> <LinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\" android:orientation=\"vertical\" android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\"> <RelativeLayout android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\"> <TextView android:layout_width=\"115dip\" android:layout_height=\"wrap_content\" android:text=\"请输入手机号\" android:id=\"@+id/mobilelabel\" /> <EditText android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" android:layout_toRightOf=\"@id/mobilelabel\" android:text=\"5556\" android:id=\"@+id/mobile\" /> </RelativeLayout> <TextView android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" android:text=\"请输入短信内容\" /> <EditText android:layout_width=\"fill_parent\" android:layout_height=\"wrap_content\" android:minLines=\"3\" android:text=\"I am a teacher!\" android:id=\"@+id/content\" /> <Button android:layout_width=\"wrap_content\" android:layout_height=\"wrap_content\" android:text=\"发送\" android:id=\"@+id/button\" /> </LinearLayout>
MainActivity类:
package com.ljq.sms; import java.util.ArrayList; import android.app.Activity; import android.os.Bundle; import android.telephony.SmsManager; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { private EditText mobileText=null; private EditText contentText=null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); mobileText=(EditText)findViewById(R.id.mobile); contentText=(EditText)findViewById(R.id.content); Button button=(Button)findViewById(R.id.button); button.setOnClickListener(new View.OnClickListener(){ public void onClick(View v) { String mobile=mobileText.getText().toString(); String content=contentText.getText().toString(); //取得android系统中默认的短信管理器 SmsManager manager=SmsManager.getDefault(); //如果短信内容过长时,则对短信内容进行拆分 ArrayList<String> texts=manager.divideMessage(content); for(String text:texts){ //第一个参数:对方手机号码 //第二个参数:短信中心号码,一般设置为空 //第三个参数:短信内容 //第四个参数:sentIntent判断短信是否发送成功,如果你没有SIM卡,或者网络中断,则可以通过这个intent来判断。 //注意强调的是“发送”的动作是否成功。那么至于对于对方是否收到,另当别论 //第五个参数:当短信发送到收件人时,会收到这个deliveryIntent。即强调了“发送”后的结果 //就是说是在\"短信发送成功\"和\"对方收到此短信\"才会激活sentIntent和deliveryIntent这两个Intent。这也相当于是延迟执行了Intent manager.sendTextMessage(mobile, null, text, null, null); } //Toast.makeText(getApplicationContext(), \"发送成功\", Toast.LENGTH_LONG).show(); Toast.makeText(MainActivity.this, \"发送成功\", Toast.LENGTH_LONG).show(); } }); } }
运行结果:
希望本文所述对大家的Android程序设计有所帮助。
本文地址:https://www.stayed.cn/item/19710
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我