ورود

View Full Version : ارتباط با وب سرويس



javad13
شنبه 16 آبان 1394, 18:39 عصر
سلام
دوستان من يك برنامه آندرويد دارم كه ميخاد با يك ديتابيس از نوع اس كيو ال ارتباط برقرار كنه ، و اين ارتباط از طريق وب سرويس انجام ميشه.
براي دريافت پارامترها از كد زير استفاده ميكنم:

RequestParams params = new RequestParams();
params.put("username", StrUserName);
params.put("password", StrPass);
nvokeWS(params);
public void invokeWS(RequestParams params){
AsyncHttpClient client = new AsyncHttpClient();
client.get("http://192.168.2.2:9999/useraccount/login/dologin",params ,new AsyncHttpResponseHandler() {
@Override
public void onSuccess(String response) {
JSONObject obj = new JSONObject(response);
if(obj.getBoolean("status")){
Toast.makeText(getApplicationContext(), "You are successfully logged in!", Toast.LENGTH_LONG).show();
}
else{
errorMsg.setText(obj.getString("error_msg"));
Toast.makeText(getApplicationContext(), obj.getString("error_msg"), Toast.LENGTH_LONG).show();
}
}
@Override
public void onFailure(int statusCode, Throwable error,
String content) {
if(statusCode == 404){
Toast.makeText(getApplicationContext(), "Requested resource not found", Toast.LENGTH_LONG).show();
}
else if(statusCode == 500){
Toast.makeText(getApplicationContext(), "Something went wrong at server end", Toast.LENGTH_LONG).show();
}
// When Http response code other than 404, 500
else{
Toast.makeText(getApplicationContext(),
"Unexpected Error occcured! [Most common Error: Device might not be connected to Internet]",
Toast.LENGTH_LONG).show();
}
}
});
}


حالا دور RequestParams و AsyncHttpClient كادر سفيد رنگي مياد كه حتما نشون دهنده اين هست كه بايد يك كتابخانه به پروژه اضافه بشه ، لطفا راهنمايي كنيد چطوري و چه كتابخانه اي بايد اضافه بشه ، اگر سوالم ابتدايي هستش ببخشيد چون تازه كار هستم.

majid_7
شنبه 16 آبان 1394, 21:55 عصر
سلام
حتما باید از وب سرویس استفاده بشه ؟؟؟
چرا خب؟
به راحتی میتونی با استفاده از HttpClient پارامتر به صفحه ی سرور بفرستی و اونجا با استفاده از php مقادیر ارسالی رو بررسی کنی توی پایگاه داده ...
چیز خاصی نداره کدش...
اگه تازه کاری (مثل من) بهترین روش همینه(البته به نظر من)...

javad13
شنبه 16 آبان 1394, 22:07 عصر
ضمنا بگم كه من از اين خط كد هم استفاده كردم :import com.loopj.android.http.AsyncHttpClient;
اما كتابخونه مورد نظر رو پيدا نكردم و همچنين نميتونم به اكليپس اضافش كنم.
لطفا جواب بديد خيلي برام مهمه دوستام.

javad13
شنبه 16 آبان 1394, 22:10 عصر
مرسي مجيد جان.
اما ديتابيس من اس كيوال سرور هستش و اينكه من asp.net كار هستم و اينكه در ارتباط آندرويد با اس كيوال همين دوروش رو بلدم : 1 - استفاده از conection string كه طبيعتا مناسب نيس 2- استفاده از وب سرويس كه بتونم اطلاعات رو بصورت json بفرستم و بگيرم.
در اين مورد لينكي يا راهنمايي اگر بكني خيلي ممنون ميشم.