-1

私の下手な英語と Java での下手なプログラミングで申し訳ありません。詳細を教えてください。助けてくれてありがとう。

これでアプリが完成しました。そして、このメッセージをmywebsite .com に送信したいと思います。

http:// mywebsite .com/web_service/counter/CSTrack2.aspxcli=focusgroup&cam=androidtest&1=W_S_UID&2=W_S_SC&3=W_S&5=W_S_DATE&7=www. 私のウェブサイト.com&8=www. mywebsite .com%2Ftc%2F&9=&10=W_S_IP&11=www. 私のウェブサイト.com&12=www. mywebsite .com%2F&13=&14=website&15=W_S&16=W_S&17=W_S&19=windows&20=Win%207(x64)&21=1&22=9.0&23=1366x768&24=1&25=1&6=CRM%20%26%20%u6578%u4F4D%u884C %u92B7%u7684%u9818%u5C0E%u8005%20-%20MIGO%20CORP%20%u529F%u5178%u96C6%u5718%20&1375088741345

ユーザーのインターネット許可が必要ですか? そして、これを実装する方法は?

4

2 に答える 2

0
public class AsyncTaskExample extends AsyncTask<String, Void, Boolean>{
    private ProgressDialog progressDialog;
    private Activity activity;

    public AsyncTaskExample(Activity activity, ProgressDialog progress) {
        activity = activity;
        progressDialog = progress;
    }

    @Override
    protected void onPreExecute(){
        progressDialog.show();
    }   

    @Override
    protected Boolean doInBackground(String... params) {
//params is array of strings containing values which are passing while calling this AsyncTaskExample 
          int responseCode;
          String responseString;
          List<BasicNameValuePair> nameValuePairs = null;
          HttpParams httpParameters = new BasicHttpParams();
        // Set the timeout in milliseconds until a connection is established.
        int timeoutConnection = 20000;
        HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
        // Set the default socket timeout (SO_TIMEOUT) 
        // in milliseconds which is the timeout for waiting for data.
        int timeoutSocket = 20000;
        HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);

        HttpClient httpclient = new DefaultHttpClient(httpParameters);

        HttpPost httpPost = new HttpPost("YOUR_URL");
        HttpResponse response;
        nameValuePairs = new ArrayList<BasicNameValuePair>();
            nameValuePairs.add(new BasicNameValuePair("user", varTwo ));
            nameValuePairs.add(new BasicNameValuePair("password", varThree ));
            httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
            response = httpclient.execute(httpPost);
            responseCode = response.getStatusLine().getStatusCode();
            responseString = EntityUtils.toString(response.getEntity());

          return isSuccess; 
  }

    @Override
    protected void onPostExecute(Boolean isSuccess){ 
        try {
            progressDialog.dismiss();
        } catch (Exception e) {
            Log.e(TAG, "Error while closing dialog");
        }

    }

次のように、コードのどこかで AsyncTaskExample を呼び出します

AsyncTaskExample loginTask =  new AsyncTaskExample (this, progressDialog);
            task.execute(userName, password); 
// here userName, password are the params which should paass to your webservice, it will get in doInBackGroung by params variable as params[0], params[1]

you should also have internet permission in manifest file
于 2013-07-30T05:14:28.613 に答える
0

Android のネットワーク通信では、マニフェスト ファイルで INTERNET パーミッションを宣言する必要があります。さらに、すべてのネットワーク通信は別のスレッドで行う必要があります (非同期タスクを使用)。そうしないと、ランタイム例外がスローされます。

于 2013-07-30T04:42:12.750 に答える