Android中实现拨打电话、发送短信、响铃、震动和获取当前时间

时间:2022-11-10 14:34:33

如果要实现以下功能,需先在Androidmainifest.xml中注册来获取权限,xml代码如下:

<uses-permission android:name="android.permission.SEND_SMS"/>  请求获取发送短信权限
<uses-permission android:name="android.permission.CALL_PHONE"/> 请求获取拨打电话权限
<uses-permission android:name="android.permission.RECEIVE_SMS"/> 请求截获短信的权限
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 请求读取手机状态的权限
<uses-permission android:name="android.permission.VIBRATE"/> 请求震动的权限

拨打电话

public void CallPhone(Context context,String phoneNum){ //拨打电话
//context 上下文
//phoneNum 手机号
Intent intenta = new Intent();
Uri uri = Uri.parse("tel:" + phoneNum);
intenta.setAction(Intent.ACTION_CALL);
intenta.setData(uri);
intenta.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intenta);
}

发送短信

public void SendMessage(String phoneNum,String sms){//发送短信
//phoneNum 手机号
//sms 短信内容
SmsManager manager=SmsManager.getDefault();
manager.sendTextMessage(phoneNum, null,sms, null, null);
}

响铃

public void Ring(Context context){ //手机响铃
//context 上下文
MediaPlayer player = MediaPlayer.create(context, R.raw.ls);
//raw是新建在/res下的文件夹,ls是raw文件下mp3文件
player.start();
try {
Thread.sleep(10 * 1000);//响铃时间10s
} catch (Exception e) {
}
player.stop();
}

震动

public void Vib(Context context){  //手机震动
Vibrator vibate = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
vibate.vibrate(10 * 1000);
}

获取系统当前时间

public String  getTime(){//获取本机时间
Date date = new Date() ;
String time = ""+(date.getYear()+1900)+"/" ;
time += (date.getMonth()+1)+"/" ;
time += date.getDate()+" " ;
time += date.getHours()+":" ;
if(date.getMinutes()<10){
time += "0" ;
}
time += date.getMinutes()+":" ;
if(date.getSeconds()<10){
time += "0" ;
}
time += date.getSeconds()+" " ;
return time;
}
这些功能在以后的开发中会经常用到,所以最好用一个类封装起来