Skip to content Skip to footer

android 实现发送短信功能以及解决权限问题

1.创建项目,新建Activity 2.sendSmsActivity.java

package com.otis.ui;

import androidx.appcompat.app.AppCompatActivity;

import androidx.core.app.ActivityCompat;

import android.Manifest;

import android.app.PendingIntent;

import android.content.Intent;

import android.os.Bundle;

import android.telephony.SmsManager;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;

import android.widget.Toast;

import com.otis.slamrobot.R;

public class SendSmsActivity extends AppCompatActivity {

EditText phone, content;

Button send;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_send_sms);

ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.SEND_SMS} , -1);

// 获取SMSManager管理器

final SmsManager smsManager = SmsManager.getDefault();

//初始化控件

phone = (EditText)findViewById(R.id.et_phone);

content = (EditText)findViewById(R.id.et_content);

send = (Button) findViewById(R.id.btn_send);

send.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

String phoneNum = phone.getText().toString();

String contentText = content.getText().toString();

//创建一个android.app.PendingIntent对象

PendingIntent pi = PendingIntent.getActivity(SendSmsActivity.this, 0, new Intent(), 0);

//发送短信

smsManager.sendTextMessage(phoneNum, null, contentText, pi, null);

//提示短信发送完成

Toast.makeText(SendSmsActivity.this, "短信发送完成", Toast.LENGTH_SHORT).show();

System.out.println(phoneNum+contentText);

}

});

}

}

3.AndroidMainfest.xml:

package="com.ui.sendsmstest">

android:allowBackup="true"

android:icon="@mipmap/ic_launcher"

android:label="@string/app_name"

android:supportsRtl="true"

android:theme="@style/AppTheme" >

4.activity_send_sms.xml:

xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

tools:context="com.ui.SendSmsActivity">

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal">

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="收件人"/>

android:id="@+id/et_phone"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_marginLeft="10dp"/>

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_marginTop="10dp"

android:orientation="horizontal">

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="发送内容"/>

android:id="@+id/et_content"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:layout_marginLeft="10dp"

android:gravity="top"

android:lines="5"

android:text="你好"/>

android:layout_gravity="center_horizontal"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="发送"

android:id="@+id/btn_send"

/>

5.关于权限问题: 需要在手机上设置打开:设置–>权限管理–>应用–>找到对应的APP–>信任此应用

Copyright © 2088 乒乓球世界杯几年一次_世界杯冠军 - salooo.com All Rights Reserved.
友情链接