Android アプリ開発
Android アプリ開発のポイントは、2点です。
準備:サンプルAndroid アプリの利用
Android は詳しくないので、サンプルソース(generic_asynctask-master)を利用しました。
参照先:https://github.com/kosalgeek/generic_asynctask
このサンプルコードは、エラーで悩むことになりましたが下記で解決できました。
ちょっと解説

利用時の注意点
1.利用者が手を加える必要があるソース(業務ロジック)は、MainActivity.javaのみで対応可能です。
2.このサンプルコードのままでは、パラメタ設定処理ができない箇所があるので修正が必要です。
原因と対処方法がわからず、オオハマりのポイントでした。

消し線の行を、以下に修正が必要です。引数が不足しています。
2 | PostResponseAsyncTask task = |
3 | new PostResponseAsyncTask(MainActivity. this , postData, MainActivity. this ); |
1.PHPアプリの起動方法
PHPアプリを起動する際に、画面項目情報をパラメタとしてセットします。
5 | HashMap<String, String> postData = new HashMap<String, String>(); |
7 | postData.put( "usernum" , Xuser_num ); |
8 | postData.put( "name" , Xuser_name); |
9 | postData.put( "addr" , Xuser_addr ); |
11 | PostResponseAsyncTask task = |
12 | new PostResponseAsyncTask(MainActivity. this , postData, MainActivity. this ); |
postData.putで、連携時の必要な値をセットしていきます。
ここでは、”usernum”に Xuser_numなどがセットされて、連携時に
usernum=XXXX&name=XXXX&addr=XXXXの形式に編集してくれます。
2.PHPアプリからのデータ受け取り
PHP処理後、「項目:output」で受け取りますので、「#」を区切り文字にして画面にセットします。
受け取り後は、I/Fの仕方とAndroidの作りによるので、参考まで。
PHPからの戻りデータ: “name=#ZZZZZZ#YYYYYYY”#“;
ZZZZZZ:名前、YYYYYYY:住所
1 | String xxx[] = output.split("#", 0 ); |
3 | if (xxx[ 0 ].equals("name=")){ |
5 | <pre><code>Tname.setText(xxx[ 1 ]); |
11 | <pre><code>Tmsg.setText(&quot;エラー&quot;); |
関連記事
ios/AndroidでHTTP通信アプリのまとめ