2011-11-03 18 views
0

私は2つのスピナーとTimePickerDialogを含むAndroidコードを持っています。ユーザーは各スピナーから任意のオプションを選択し、時間を設定することができます。私は、ユーザーが選択したオプションとWebサービスを介してリモートデータベースに設定された時間を保存します。私のデータベースはSQLになります。AndroidのWebサービス経由でデータをリモートデータベースに保存

どうすればいいですか?あなたは、モバイルデバイスとの相互作用のためのAPIを公開するWebサービスを作成する必要が

おかげ

答えて

2

JSONを作成してWebServiceに投稿することをお勧めします。

JSONを作成するには、JSONObject,JSONArrayクラスを使用する必要があります。例えば

JSONObject obj = new JSONObject(); 
obj.put("Spinner1Value",strSpinner1Value); 
obj.put("Spinner2Value",strSpinner2Value); 
obj.put("DateTimeValue",strDateTime); 

となりました。このOBJ値を持つウェブ呼び出しを行います。

+0

これは、私が持っているスピナー値の数に依存することを意味するので、私はそれらのobj.putステートメントを書く必要があります。 –

+0

@ Parth_90はい、XML作成が好きなら、これを実行する必要があります。 –

+0

JSONについてよく知っていますか?そうでない場合は、この例を見てください。http://goo.gl/gH7bi –

2

。 PHPまたはRuby on Railsを使用することができます。さらに、簡単な認証が必要になります(httpは動作します)。

アンドロイド側ではリクエスト(HTTP POSTなど)を作成し、Webサービスに公開してレスポンスコードを確認します。

+0

HTTP POSTでこれらの値をパラメータとして渡して、Webサービスに公開できるようにする必要がありますか?あなたが与えることができるすべての例 –

+0

@ Parth_90:この場合の最も簡単な方法は、POSTの本体にキーと値のペアを渡すだけです。あるいは、ほとんどの人が使っているJSONを使うことができます。どちらもあなたのケースで動作します。 – Zepplock

+0

@ Dr.nik:いいえ、まったくありません。それらの2つは最も「フォロワー」を持ち、チュートリアルを見つけるのは簡単です。 Python/Djangoは別の方法になります。 .NETとJavaにはWebサービスフレームワークもあります。元のポスターがどんなに快適であっても。 – Zepplock

1

ユーザーが最初のsppinnerをクリックすると、選択した値をグローバル変数&に保存して、wbserviceを呼び出すときにその値を使用できます。またはこのように作成

Spinner subject; 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    ..................... 
    HashMap<Integer, String> subjectMap = new SubjectMap<Integer, String>(); 
    ................ do rest of the work 
    ............ Make a ArrayList & pass the value to spinner adapter 
    subject = (Spinner)findById(R.id.subject); 
} 

public void callWbserviceMethod(){ 
    String selectdSubject= subjectMap .get((int) sp.getSelectedItemId()); 
    /// rest of the work 
} 
+0

ありがとう! :D –