android开发短信
Ⅰ android开发:获取手机短信内容的时候,可以获取到短信内容,但是号码和发件人都获取不到
android4.4以上Google提高了用户的安全性。如果想获取短信发件人就要获取手机号,正是手机号,运营商将卡的信息直接写入卡中,但是运营商现在也不将它再继续写入。通过imsi得到的手机卡信息,部分获取不到,部分能成功!你可以试着让用户自己发短信给你,获取手机号。
Ⅱ Android开发,短信拦截后怎么让它在另外一个activity里面回显出来
你好:
方法1:在你成功截取短信内容后,完全可以将它保存下来,是可以使用IO或者SharedPreferences的,可能你不会调用吧,在Activity中有一个成员变量Context可以使用。
方法2:成功截取短信后,就保存在某一字符串中,在跳转到另外一个Activity的时候,通过Bundle捆绑该字符串传过去就可以。
方法非常多,建议楼主多尝试尝试,就会变成高手的!
谢谢,望采纳哦。
Ⅲ android开发怎样获取系统短信指定内容求大神啊!
java代码
// android获取短信所有内容
// 注意设置权限[添加到AndroidMainfest.xml] <uses-permission android:name="android.permission.READ_SMS" />
public String getSmsInPhone()
{
final String SMS_URI_ALL = "content://sms/";
final String SMS_URI_INBOX = "content://sms/inbox";
final String SMS_URI_SEND = "content://sms/sent";
final String SMS_URI_DRAFT = "content://sms/draft";
StringBuilder smsBuilder = new StringBuilder();
try{
ContentResolver cr = getContentResolver();
String[] projection = new String[]{"_id", "address", "person",
"body", "date", "type"};
Uri uri = Uri.parse(SMS_URI_ALL);
Cursor cur = cr.query(uri, projection, null, null, "date desc");
if (cur.moveToFirst()) {
String name;
String phoneNumber;
String smsbody;
String date;
String type;
int nameColumn = cur.getColumnIndex("person");
int phoneNumberColumn = cur.getColumnIndex("address");
int smsbodyColumn = cur.getColumnIndex("body");
int dateColumn = cur.getColumnIndex("date");
int typeColumn = cur.getColumnIndex("type");
do{
name = cur.getString(nameColumn);
phoneNumber = cur.getString(phoneNumberColumn);
smsbody = cur.getString(smsbodyColumn);
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
Date d = new Date(Long.parseLong(cur.getString(dateColumn)));
date = dateFormat.format(d);
int typeId = cur.getInt(typeColumn);
if(typeId == 1){
type = "接收";
} else if(typeId == 2){
type = "发送";
} else {
type = "";
}
smsBuilder.append("[");
smsBuilder.append(name+",");
smsBuilder.append(phoneNumber+",");
smsBuilder.append(smsbody+",");
smsBuilder.append(date+",");
smsBuilder.append(type);
smsBuilder.append("] ");
if(smsbody == null) smsbody = "";
}while(cur.moveToNext());
} else {
smsBuilder.append("no result!");
}
smsBuilder.append("getSmsInPhone has executed!");
} catch(SQLiteException ex) {
Log.d("SQLiteException in getSmsInPhone", ex.getMessage());
}
return smsBuilder.toString();
}
Ⅳ 如何用eclipse编写android app实现发短信的功能
大概的写一下步骤给你:
1.在android工程的配置文件里加上调用系统短信功能的权限:
<uses-permissionandroid:name="android.permission.SEND_SMS"></uses-permission>
<uses-permissionandroid:name="android.permission.READ_SMS"></uses-permission>
<uses-permissionandroid:name="android.permission.RECEIVE_SMS"></uses-permissin>
2、主要代码片段:
{
...
privatevoidsend1(Stringphone,Stringmessage){
PendingIntentpi=PendingIntent.getActivity(this,0,newIntent(this,testSms.class),0);
SmsManagersms=SmsManager.getDefault();
sms.sendTextMessage(phone,null,message,pi,null);
}
}
参数:phone:手机号码
message:短信内容
Ⅳ android 开发 一个通过服务端内容自动发送短信到指定号码
服务器和手机端通信,如果要实时通信,就需要使用推送,自己写的推送一般不够好,还是使用专业推送比较好,国内的可以使用极光推送,网络推送等等,如果是国际的可以使用谷歌的google cloud message,或者使用友盟……友盟还是比较靠谱的。
然后手机发送短信只需要一个权限,然后会有很简单的代码就可以发送短信了,而且,一般的第三发推送也可以给服务端发消息,所以你的要求就齐全了。
如果不是用第三方的向服务器报告,也可以自己写和服务器的通信。
如果推送都要自己写,那么android的推送有3种方式,第一socket长连接,比较耗费手机资源和电……第二种轮询,有一点点延迟,看你的实时性有多高……第三种,使用短信息,服务端要有短信网关,手机端则监听手机短信数据库,用这个的比较少,一般长连接比较多。
我的号码就是我qq,有什么问题可以进一步的问我,或者我没时间的话也有很多android开发群 可以介绍给你 随便问问题,有很多高人解答
Ⅵ Android开发如何实现手机短信验证要用到短信验证接口吗
要用到短信验证接口的,这个开发起来不复杂的。在程序里边实现的流程是:用户注册会员的时候,先输入自己的手机号码,点击获取验证码;网站随机生成一个数字作为验证码,同时调用验证码短信接口给这个用户发送一条短信;用户收到短信后填写验证码,再跟生成的数字进行比对,如果一致,那么说明用户填写的手机号码是正确的,验证成功。
Ⅶ android studio开发怎么获取手机短信
1.点击一个按钮就会显示系统的联系人列表,当用户点击联系人之后就会看到详细的名字和电话。
2.具体的代码如下:首先在AndroidManifest.xml文件中配置用户权限。
<uses-permission android:name="android.permission.READ_CONTACTS"/>11
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.dragon.testevent.MainActivity">