如何使用 Kotlin 在 Android 中的 WhatsApp 上发送消息
Whatsapp是最受欢迎的消息应用程序之一。许多安卓应用程序需要将一些消息直接从他们的应用程序共享到 WhatsApp 的功能。例如,如果用户想要共享应用程序或共享来自应用程序的消息,则使用此功能。用户可以发送文本或预定义文本也可以通过它发送。本文演示了 android 应用程序如何在 WhatsApp 上发送消息。 Whatsapp 必须安装在用户的设备上。
在本文中,我们将尝试创建一个使用 Kotlin 在 WhatsApp 上发送消息的 Android 应用程序。
Note: To view how to do this in Java, please refer How to send message on WhatsApp in Android using Java.
方法
第一步:修改activity_main.xml文件
打开activity_main.xml
文件并添加布局代码。 activity_main.xml
包含一个线性布局,其中包含一个用于输入消息的 EditText 和一个用于提交消息的 Button。
activity_main.xml
MainActivity.kt
package com.gfg
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Referencing the Edit Text
val messageEditText = findViewById(R.id.message)
// Referencing the button
val submit = findViewById
第 2 步:使用 MainActivity.kt 文件
- 参考 Kotlin 文件中的 EditText 和 Button。在
findViewById()
方法的帮助下使用 id 获取引用。参考 EditText
// Referencing the Edit Text
val messageEditText = findViewById(R.id.message) 同样参考按钮
// Referencing the button
val submit = findViewById - 编写一个向 WhatsApp 发送消息的函数。使用ACTION_SEND创建一个意图并为此指定 whatsapp 包名称,以便它直接打开。 com.whatsapp是官方 WhatsApp 应用程序的包名。
fun sendMessage(message:String){ // Creating intent with action send val intent = Intent(Intent.ACTION_SEND) // Setting Intent type intent.type = "text/plain" // Setting whatsapp package name intent.setPackage("com.whatsapp") // Give your message here intent.putExtra(Intent.EXTRA_TEXT, message) // Checking whether whatsapp is installed or not if (intent.resolveActivity(packageManager) == null) { Toast.makeText(this, "Please install whatsapp first.", Toast.LENGTH_SHORT).show() return } // Starting Whatsapp startActivity(intent) }
- 使用按钮上的setOnClickListener设置单击侦听器以发送消息。获取用户输入的文本并调用函数在whatsapp上发送消息。
// Setting on click listener submit.setOnClickListener { val message = messageEditText.text.toString() // Calling the function sendMessage(message); }
下面是完整的 MainActivity.kt 文件
MainActivity.kt
package com.gfg
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.Toast
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// Referencing the Edit Text
val messageEditText = findViewById(R.id.message)
// Referencing the button
val submit = findViewById
输出