- 浏览: 340821 次
- 性别:
- 来自: 安徽
文章分类
最新评论
-
secally:
楼主可以上传个例子吗,谢谢,我咋跑不起来,,eclipse不是 ...
Android自动打包、签名、优化、上传ANT脚本 -
secally:
请问下执行命令是啥,ant release 还是?麻烦指教谢谢 ...
Android自动打包、签名、优化、上传ANT脚本 -
trp1022:
好牛啊
程序员不能不通文史 -
sunny78117:
谢谢,写得好
Android bitmap优化 -
futurebp:
这是什么类型的脚本啊?
Android自动打包、签名、优化、上传ANT脚本
以下内容Sinfrancis版权所有,专注请注明来自 http://mdev.cc/dev
目的:使用模拟器互发短信息,比如 5554 和 5556互发短息
关键代码:
发送短信代码:
package cc.androidos.sms; import android.app.Activity; import android.app.PendingIntent; import android.content.Intent; import android.os.Bundle; import android.telephony.gsm.SmsManager; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; /** * * @param demo * :its own object. * @param telNum * : telephone number to send to . * @param messageText * : the message need to send . * @param sendBtn * :Button. * */ public class SMSDemo extends Activity { private static SMSDemo demo; private EditText telNum; private EditText messageText; private Button sendBtn; /** * override the method onCreate() 1.bind the data telNum and messageText. * 2.set the sendBtn's listener. */ public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.send); demo = this; telNum = (EditText) findViewById(R.id.telNumText_send); messageText = (EditText) findViewById(R.id.message_copntent_send); sendBtn = (Button) findViewById(R.id.send_button_send); /** * 1.get the data from the input line.. 2.call the SmsManager and send * the message. */ sendBtn.setOnClickListener(new OnClickListener() { public void onClick(View v) { String telNumStr = telNum.getText().toString(); String messageStr = messageText.getText().toString(); if (null != telNumStr && null != messageStr) { SmsManager smsMgr = SmsManager.getDefault(); Intent i = new Intent("cc.androidos.smsdemo.IGNORE_ME"); PendingIntent dummyEvent = PendingIntent.getBroadcast( SMSDemo.this, 0, i, 0); try { smsMgr.sendTextMessage(telNumStr, null, messageStr, dummyEvent, dummyEvent); } catch (Exception e) { Log.e("SmsSending", "SendException", e); } } else { showDialog(getTaskId()); } } }); } /** * get its object. * * @return SMSDemo */ public static SMSDemo getApp() { return demo; } }
接受短信的Receiver:
package cc.androidos.sms; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.telephony.gsm.SmsMessage; import android.util.Log; public class SMSReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { SMSDemo demo = SMSDemo.getApp(); Bundle bundle = intent.getExtras(); StringBuffer sb = new StringBuffer(5000); Object messages[] = (Object[]) bundle.get("pdus"); SmsMessage smsMessage[] = new SmsMessage[messages.length]; for (int n = 0; n < messages.length; n++) { smsMessage[n] = SmsMessage.createFromPdu((byte[]) messages[n]); String address = smsMessage[n].getOriginatingAddress(); sb.append(address + ":").append(smsMessage[n].getMessageBody()); } Log.e("message", sb.toString()); /** * call an intent to start the activity DisplayMessage with variable * message data. */ Intent i = new Intent(context, DisplayMessage.class); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); i.putExtra("message", sb.toString()); context.startActivity(i); } }
显示短信的Activity:
package cc.androidos.sms; import android.app.Activity; import android.app.PendingIntent; import android.content.Intent; import android.database.Cursor; import android.net.Uri; import android.os.Bundle; import android.telephony.gsm.SmsManager; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.ProgressBar; public class DisplayMessage extends Activity { private EditText messageText; private EditText messageReplyText; private Intent intent; private String telNum; private String message; private Button replyBtn; private ProgressBar bar; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.receiver); messageText = (EditText) findViewById(R.id.message_get); messageReplyText = (EditText) findViewById(R.id.message_reply); replyBtn = (Button) findViewById(R.id.reply_button); bar = (ProgressBar) findViewById(R.id.bar); bar.setVisibility(ProgressBar.INVISIBLE); intent = getIntent(); String data = intent.getStringExtra("message"); String[] str = data.split(":"); if (str.length == 2) { telNum = str[0]; message = str[1]; } messageText.append(data); messageText.append("\n"); // messageText.append("\n"); replyBtn.setOnClickListener(new OnClickListener() { public void onClick(View v) { bar.setVisibility(ProgressBar.VISIBLE); String replyMessage = messageReplyText.getText().toString(); SmsManager smsMgr = SmsManager.getDefault(); Intent i = new Intent("cc.androidos.smsdemo.IGNORE_ME"); PendingIntent dummyEvent = PendingIntent.getBroadcast( DisplayMessage.this, 0, i, 0); try { smsMgr.sendTextMessage(telNum, null, replyMessage, dummyEvent, dummyEvent); messageText.append(replyMessage); messageText.append("\n"); messageReplyText.setText(""); } catch (Exception e) { Log.e("SmsSending", "SendException", e); } bar.setVisibility(ProgressBar.INVISIBLE); } }); } /** * get the name by his tel number. * * @param telNum * @return */ private String getNameByIdTelnum(String telNum) { Cursor mCursor = this.getContentResolver().query(Uri.parse("telNum"), null, null, null, null); String result = mCursor.getColumnName(1); Log.e("test name", result); return ""; // mCursor.getColumnIndex("Sun"); } }
最后别忘记加入权限:
<uses-permission android:name="android.permission.RECEIVE_SMS" /> <uses-permission android:name="android.permission.SEND_SMS" />
测试的时候开两个模拟器,号码填入对方模拟器号即可
- mysms.rar (39.7 KB)
- 下载次数: 507
评论
4 楼
huangbq
2010-09-06
请问发送中文短信的话,接收模拟器会出现乱码,该怎么解决?
3 楼
morosefrog
2010-04-30
谢谢分享,学习了~
2 楼
supertaxi
2010-01-06
请问怎么样开两个模拟器啊~~
1 楼
yzhong_sa
2009-12-30
请问 有没有彩信的?
发表评论
-
抓取Android WebView截屏
2011-08-19 21:33 7662一般使用setDrawingCacheEnabled(true ... -
Android bitmap优化
2011-08-11 17:02 5985直接使用ImageView显示 ... -
Android模拟器更改分辨率后 无法取得分辨率问题
2011-05-11 21:06 2858在PC上更改模拟器分辨率为480*800 (如果你的PC界面 ... -
获取屏幕硬件分辨率方法 收藏
2011-05-11 16:28 1917TextView tv=(TextVie ... -
Bytecode for the Dalvik VM
2011-05-10 22:35 1366http://www.netmite.com/android/ ... -
Android DEX反编译后部分代码解析
2011-05-10 22:07 3944一个private 方法 private Stri ... -
反编译并且修改Android APK包
2011-05-10 16:57 3132為了某個實驗的動機,我們評估反編譯 Android ... -
Android Ant编译时候进行混淆
2010-10-18 13:49 3831版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
自定义Ant Task
2010-09-13 17:58 2997版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自动打包、签名、优化、上传ANT脚本
2010-07-26 16:51 13988版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
Android自定义含有CheckBox的Adapter遇到的问题
2010-06-23 13:48 4126版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
QR code类库
2010-06-03 23:11 2332Google code发现的好东西。 QR code 类库 ... -
Android QQ,一个WEBOS APP诞生!!(两个QQ对比!)
2010-04-10 12:05 1879请看这个大哥的言论 http://linuxtoy.or ... -
Android 、BlackBerry 文本对齐方式对比
2010-02-22 13:11 1811版权所有,欢迎转载,转载请注明 : SinFrancis h ... -
教你如何开关Android的APN网络
2010-01-08 11:36 6053版权所有,转载请注明来自Mobile Developer (h ... -
史上最强NDK入门项目实战
2009-10-10 13:29 2690以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
使用TimerTask控制ProgressBar
2009-10-10 13:21 1116以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
自定义List布局
2009-10-10 13:19 1920以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
重画Progressbar的进度
2009-10-10 13:15 1942以下内容Sinfrancis版权所有,专注请注明来自 htt ... -
谈谈Android中文短信的实现
2009-10-10 13:13 2182似 乎Google在推出G1时 ...
相关推荐
"Android 模拟器互发短信程序演示" Android 模拟器互发短信程序演示是一种基于 Android 平台的短信发送程序,该程序可以在两个 Android 模拟器之间互发短信。下面是该程序的详细介绍: 一、创建 Android 工程 在...
例如,以下代码片段展示了如何初始化数据(通过模拟器互发短信)并进行测试: ```java public class SMSTest extends AndroidTestCase { private static final String TAG = "SMSTest"; // 省略初始化数据的步骤...
5. **兼容性测试**:与不同厂商的短信网关或SMSC(短消息服务中心)进行互操作性测试,确保跨平台的兼容性。 6. **日志分析**:分析测试产生的日志文件,找出潜在问题和改进点。 7. **性能优化**:根据测试结果...
- SOAP是基于XML的,这意味着所有的消息都以XML格式编码,使得数据具有跨平台和跨语言的互操作性。 - SOAP协议通常与WSDL(Web Services Description Language)结合使用,WSDL描述了服务的位置、消息格式以及如何...
7. **模拟与测试**:在实际硬件上测试前,可以使用互芯平台的模拟器进行预测试。这有助于在不涉及物理设备的情况下检查代码逻辑是否正确。 8. **连接硬件**:当代码在模拟器上运行良好后,将你的应用程序部署到GSM...
【Java手机与计算机互发彩信源码】是Java编程领域的一个经典案例,涉及到移动通信技术、Java ME(Java Micro Edition)以及Java SE(Java Standard Edition)的应用。在这个项目中,我们将深入理解如何利用Java技术...
1. **免费短信**:飞信用户之间可以免费互发短信,无论对方是否在线,都可以实现即时通信,节省了短信费用。 2. **多平台支持**:不仅支持手机,还可以在电脑上通过客户端或者网页版使用,实现了跨平台的无缝沟通。 ...
|--模拟发短信 指定号码 短信窃听提示 |--消息机制 mesage looper |--滑动之左右滑动的两种定义 |--电话簿读取联系人信息 |--监听 |--监听之CheckBox是否选中监听 |--监听之EditText内容变化监听 |--监听之GridView...
SGIP(Short Message Gateway Interworking Protocol)协议是中国联通的一种短消息网关互操作协议,用于在不同的短信中心之间传输和处理短消息。这个协议包括了发送、接收、查询、删除等多种短消息业务功能,是构建...
随着手机移动技术的迅速发展,手机已经从过去的单一通话和收发短信功能发展到现在可进行移动搜索、全球定位导航、手机电视、实时的视频通信、网上支付和对使用者的健康进行监测等其它强大功能。 该系统采用...
1. **安卓模拟器**: 豌豆荚不仅是一个应用市场,它还支持通过内置的安卓模拟器在电脑上运行安卓应用。用户无需拥有安卓设备,就能在电脑上体验各种手机应用。 2. **应用下载与更新**: 豌豆荚提供了一个方便的界面,...
11. **Sun Java Wireless Toolkit工具:** Sun Java Wireless Toolkit包含用于开发J2ME应用程序的两个主要工具,它们是(a)Mobile Phone模拟器和Java Card模拟器。这些工具帮助开发者在实际设备可用之前测试和调试...
与传统的短信服务(SMS)相比,彩信提供了更丰富的媒体体验。例如,一个女性用户可以通过订阅新闻服务每天早晨接收到带有图片的头条新闻;一个小男孩可以在他喜欢的乐队发布新专辑时收到包含音乐片段的彩信;旅行...
Android系统不仅仅是一个操作系统,它还包含了一系列中间件和一些关键的应用程序,如邮件客户端、短信程序、日历、地图、浏览器、联系人管理程序等,这些应用程序都是使用Java语言编写的。 Android的应用程序框架...
通过手机上网下载以及使用短信定购的方式,直接在手机的个人文档或者应用程序中找 到(根据手机各不相同),无需在安装,直接可以在类似"我的文件夹"之类的选项找到。 使用电脑下载就需要将文件传送到手机上。 ...
Kotlin具有简洁的语法、类型安全、空安全和互操作性等优点,极大地提高了开发效率和代码质量。相比Java,Kotlin减少了代码量,降低了出错的可能性,并支持函数式编程概念。 Android应用程序主要由以下几个组件构成...