2

を使用してAndroidでSMSを送信しようとしていますtwilio。しかし、私はそれを送信できません

Fatel exception: java.lang.NoClassDefFoundError:com.twilio.sdk.TwilioRestClient

通常の Java プログラムで SMS を送信しようとしている場合は、正常に動作しています。Androidで同じコードを使用している場合、上記の例外が発生しています。その例外を解決するにはどうすればよいですか。

そしてMainActivity.java_

  package com.example.smsthroughandroid;

import java.util.HashMap;
import java.util.Map;

import com.twilio.sdk.TwilioRestClient;
import com.twilio.sdk.TwilioRestException;
import com.twilio.sdk.resource.factory.SmsFactory;
import com.twilio.sdk.resource.instance.Account;
import com.twilio.sdk.resource.instance.Sms;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {
Button b1;
public static final String ACCOUNTSID = "AC126e8ddb3602a2ee77c1295c54b82fdc";
public static final String AUTHTOKEN = "04c75d5737fdd5cfb2d96f9678d1b4cd";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        b1=(Button)findViewById(R.id.button1);
        b1.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
        /* Instantiate a new Twilio Rest Client */

        try {
        TwilioRestClient client = new TwilioRestClient(ACCOUNTSID, AUTHTOKEN);

        // Get the account and call factory class
        Account acct = client.getAccount();
        SmsFactory smsFactory = acct.getSmsFactory();
        Map<String,String> params = new HashMap<String,String>();
        params.put("From","+13312096397");
        params.put("To", "+918095083152");
        params.put("Body", "Bad news " + "hai" + ", the server is down and it needs your help");

            // send an sms a call  
            // ( This makes a POST request to the SMS/Messages resource)
            Sms sms = smsFactory.create(params);
            System.out.println("Success sending SMS: " + sms.getSid());
        }
        catch (TwilioRestException e) {
            e.printStackTrace();
        }
        Toast.makeText(this, "hai", Toast.LENGTH_LONG).show();

    }



}

そして私のactivity_main.xml

<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >


    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView1"
        android:layout_below="@+id/textView1"
        android:layout_marginLeft="36dp"
        android:layout_marginTop="59dp"
        android:text="Button" />

</RelativeLayout>

次のjarを使用しています

commons-httpclient-3.1.jar
gwt-twilio-1.1.jar
jackson-core-asl-1.9.13.jar
jackson-mapper-asl-1.9.0.jar
org.apache.httpcomponents.httpclient_4.3.1.jar
twilio-java-sdk-3.3.14.jar
org.apache.commons.logging.jar

twilioclient-android-1.1.2-3635733.jar
4

3 に答える 3

0

Android アプリでは twilio-java-sdk ではなく、twilioclient-android のクラスのみを使用する必要があります。インポートは com.twilio.client. で開始する必要があります。これを参照してください

于 2013-10-26T12:48:47.927 に答える
-2

これを試してください-1)プロジェクト->構成ビルドパス->順序とエクスポート->依存プロジェクトを上に移動

2) [プロジェクト] -> [プロパティ] -> [Java ビルド パス] -> [注文とエクスポート] をクリックし、プロジェクトと使用している他のすべてのライブラリ プロジェクトに対して Android プライベート ライブラリがチェックされていることを確認します。

于 2013-10-26T12:36:46.683 に答える
-2

質問する前に、ウェブで検索する必要があります。答えを見つけたリンクを参照してください。

Android java.lang.NoClassDefFoundError

于 2013-10-26T12:29:23.983 に答える