2016-04-14 4 views
2

私はTwilioを使用するアンドロイドアプリを書いていますが、明らかに私はアンドロイドを初めて使っています。私はちょうど誰かがTwilio's siteからこれらのサンプルクラスを使用する方法を説明できるかどうかを見たいと思いますか?Android Twilioこれらのサンプルクラスはどのように使用しますか?

CallRetrieverという新しいJavaクラスを作成すると、ACCOUNT_SIDAUTH_TOKENまたはその他のパラメータを送信しているときに、私の主なアクティビティでどのように呼び出すことができますか?

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

import com.twilio.sdk.TwilioRestClient; 
import com.twilio.sdk.TwilioRestException; 
import com.twilio.sdk.resource.instance.Account; 
import com.twilio.sdk.resource.instance.Call; 
import com.twilio.sdk.resource.list.CallList; 

public class CallRetriever { 

    // The customer's Account Sid 
    public static final String ACCOUNT_SID = "AC123"; 

    // Your own Auth Token 
    public static final String AUTH_TOKEN = "456bef"; 

    public static void main(String[] args) throws TwilioRestException { 

     TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN); 
     Account mainAccount = client.getAccount(); 
     CallList calls = mainAccount.getCalls(); 
     for (Call call : calls) { 
      System.out.println("From: " + call.getFrom() + " To: " + call.getTo()); 
     } 
    } 
} 

UPDATEコードが行くことになるところです。

import... 
public class StartPage extends Activity { 
    ... 
    private String twilio_account_sid; 
    private String twilio_auth_token; 
    ... 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     twilio_account_sid = booth_preferences.getString("twilio_account_sid", ""); 
     twilio_auth_token = getString(R.string.twilio_auth_token); 

     twilio_login_button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       //Do a post to a PHP page to get user SID 
       twilio_web_view.getSettings().setJavaScriptEnabled(true); 
       twilio_web_view.setWebViewClient(new WebViewClient() { 
        public boolean shouldOverrideUrlLoading(WebView view, String url){ 
         requested urlredirect: 
         view.loadUrl(url); 
         if(url.contains("?")) { 
          String[] url_split = url.split("\\?"); 
          if(url_split[1].contains("&")){ 
           String[] url_values = url_split[1].split("&"); 
           //Get splits, probably not necessary 
          } else { 
           //GET SID from URL 
           String[] url_values = url_split[1].split("="); 
           String type = url_values[0]; 
           String value = url_values[1]; 
           Log.d("*******", type + "::" + value); 
           edit_preferences.putString("twilio_account_sid", value).apply(); 
           twilio_web_view.setVisibility(View.GONE); 
           Toast.makeText(getApplicationContext(), "Logged in to Twilio " + twilio_account_sid, Toast.LENGTH_LONG).show(); 
           twilio_login_button.setVisibility(View.GONE); 
           twilio_logout_button.setVisibility(View.VISIBLE); 

           //THIS IS WHERE I NEED THE CLASS TO RUN. 
           //I NEED TO SEND THE NEW SID AND AUTH TOKEN 
           TwilioRestClient client = new TwilioRestClient(twilio_account_sid, getString(R.string.twilio_auth_token)); 
           Account mainAccount = client.getAccount(); 
           CallList calls = mainAccount.getCalls(); 
           for (Call call : calls) { 
            System.out.println("From: " + call.getFrom() + " To: " + call.getTo()); 
           } 
          } 
         } 
         return false; // then it is not handled by default action 
        } 
       }); 

      twilio_web_view.loadUrl("https://www.twilio.com/authorize/CN546428ff3127adbab58eb73db7c7dc93"); 
       //setContentView(twilio_web_view); 
       twilio_web_view.setVisibility(View.VISIBLE); 
      } 
     }); 
    } 
} 

助けがあれば助かります。

+0

ちょうど活動のonCreate(...) ''であなたのメインロジックを追加するには、以下のようなCallRetrieverをカスタマイズしたと仮定した場合、それは 'ネットワークだ場合'' Asynctask'を使ってバックグラウンドで呼び出してください。 –

+0

@MD、ありがとう、私は実際に 'onCreate'でクラスを呼び出す方法はわかりません。私はその言葉を知らないので何を探すべきかわからない。これまでのところ、私は主な活動のすべてをやっています。 – ntgCleaner

+0

okあなたの活動コードを最初に投稿してください。何かがある場合は –

答えて

3

私はActivity

public class MainActivity extends Activity{ 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.Yourlayout); 

    CallList calls = CallRetriever.getAllCalls("ACCOUNT_SID_value","AUTH_TOKEN_value"); 
    //calls contains the final result 
    for (Call call : calls) { 
     System.out.println("From: " + call.getFrom() + " To: " + call.getTo()); 
    } 
} 
} 

今すぐ

public class CallRetriever { 

// The customer's Account Sid 
public static final String ACCOUNT_SID = "AC123"; 

// Your own Auth Token 
public static final String AUTH_TOKEN = "456bef"; 

public static CallList getAllCalls(String ACCOUNT_SID,String AUTH_TOKEN) throws TwilioRestException { 

    TwilioRestClient client = new TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN); 
    Account mainAccount = client.getAccount(); 
    retrun mainAccount.getCalls(); 

    } 
} 
+1

こちらをご覧ください。私は今理解していると思う、私はちょうどリンクを作る必要がある – ntgCleaner

+0

@ntgCleanerうーんもそれは素晴らしいです。 –

+0

私は今、私はクラスにパラメータを渡すのだろうかと思いますか?例えば。私は認証トークンを渡し、SIDをクラス – ntgCleaner

関連する問題