忍者ブログ

アンドロイドのあれこれ

android-xmlrpcによるAndroidのXML-RPCクライアント通信
android-xmlrpcというライブラリーを使用してAndroidからXML-PRCのプロトコル通信の例を紹介します。
ダウンロード: http://code.google.com/p/android-xmlrpc/

またXML-RPCのAPIやメソッドはこちらのサイトで参考しました。
http://www.na.rim.or.jp/~tsupo/program/blogTool/mt_xmlRpc.html

- ライブラリーをプロジェクトに追加
サイトからダウンロードした後、展開すると「android-xmlrpc」というディレクトリができます。
android-xmlrpcの中身はAndroidのプロジェクトとなっているのでそのままEclipseにインポートしてもいいですが、
xmlrpcライブラリーのみを自分の開発しているプロジェクトを追加したい場合はandroid-xmlrpc/src以下のものをコピーして自分のプロジェクトの/src以下に貼り付けるとorg.xmlrpc.androidパッケージが追加されてライブラリーを使うことができます。(Test.javaはサンプルなので必要なければ消しても問題ありません)

- 使用例
以下の例はブログに新しい記事を投稿するときにmetaWeblog.newPostのメソッドを使う場合です。
public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        //クライアント設定
        XMLRPCClient client = new XMLRPCClient("http://example.com/xmlrpc.php");
        String method = "metaWeblog.newPost";
        
        //structタイプはHashMapを使う
        HashMap<String, Object> content = new HashMap<String, Object>();
        content.put("title", "Title");
        content.put("description", "Text");
        content.put("dateCreated", new Date());
        
        int publish = 1;
        
        //引数のパラメーターを作成
        Object[] params = {
                "blogid",
                "username",
                "password",
                content,
                publish
            };
        String response;
        try {
            Object o = client.callEx(method, params);
            response = o.toString();
        } catch (XMLRPCException e) {
            Log.v("ERRLOG","message: " + e.getMessage());
        }
    }
}

COMMENT
NAME
TITLE
MAIL (非公開)
URL
EMOJI
Vodafone絵文字 i-mode絵文字 Ezweb絵文字
COMMENT
PASS (コメント編集に必須です)
SECRET
管理人のみ閲覧できます
 
PR
© Android Advent
powered by 忍者ツールズ / 忍者ブログ / [PR]