使用twilio通过Android Kotlin发送短信

时间:2019-08-27 18:06:42

标签: android kotlin mobile twilio

我正在尝试使用Twilio AP从android(kotlin)发送消息。

我添加了twilio库

implementation group: "com.twilio.sdk", name: "twilio", version: "7.17.+"

这是我的科特琳课:

package com.example.new_pharma_project

import android.support.v7.app.AppCompatActivity
import android.os.Bundle
import com.twilio.http.TwilioRestClient
import com.twilio.rest.api.v2010.account.Message
import com.twilio.type.PhoneNumber

class MainActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)


        val client = TwilioRestClient.Builder (
            "username",
            "passowrd"
        ).build()


        val message = Message.creator(
            PhoneNumber("+213777875776"),
            PhoneNumber("+213777877556"),
            "Ahoy from Twilio"
        ).create(client)

        println(message.sid)
    }
}

我希望在手机上收到一条消息,但这是我在日志输出中得到的信息

java.lang.NoSuchFieldError: No static field INSTANCE of type Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; in class Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; or its superclasses (declaration of 'org.apache.http.conn.ssl.AllowAllHostnameVerifier' appears in /system/framework/framework.jar!classes3.dex)

2 个答案:

答案 0 :(得分:0)

这里是Twilio开发人员的传播者。

我们强烈建议您不要在Android应用程序中使用Twilio API SDK。为此,您需要在应用程序中嵌入或使用Twilio凭据,从而使它们容易受到恶意用户的攻击,这些恶意用户可能会反编译应用程序,窃取凭据并滥用您的帐户。

相反,我们建议您创建一个服务器端应用程序,该服务器端应用程序可用于将API请求从应用程序代理到Twilio API。 Here is an example of how to do that (using Java, I'm afraid)。希望您也可以将其应用于Kotlin。

让我知道是否有帮助。

答案 1 :(得分:0)

这是我为TwilioSMS创建的一个Android库,不需要服务器端应用程序。 https://github.com/hihi-dev/android-twilio-sms

在API 14 +上运行

implementation 'com.github.hihi-dev:twiliosms:0.1.1'