Я пытаюсь подключить веб-службу, для которой требуются учетные данные, и вам не повезло. Я использую ksoap2, и я знаю, что код работает (я использовал его с локальным хостом, прежде чем я поместил веб-службу на сервер). Я также знаю, что сервер работает нормально, потому что я сделал программу aС#, которая просто обращается к серверу, Если бы кто-нибудь мог показать мне, как передать имя пользователя и пароль, я был бы очень благодарен.
EDIT: моя проблема исправлена. Я размещаю код, который я использовал для его исправления.
List<HeaderProperty> headers = new ArrayList<HeaderProperty>();
headers.add(new HeaderProperty("Authorization", "Basic "+Base64.encode("Username:Password".getBytes())));
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
/
androidHttpTransport.call(SOAP_ACTION, envelope,headers);
Если вы хотите отправить имя пользователя и пароль, проверьте ответ Parth_90.
Но если вы хотите использовать HTTPS, то я думаю, что это поможет: https://groups.google.com/forum/#!topic/android-developers/GsK4UeByabo (проверьте первый ответ).
Я уже делал подобное. Я создал приложение для Android, которое обращается к веб-службе для аутентификации пользователей с помощью ksoap.
Вы можете указать, как вызвать локальный веб-сервис из Android Mobile App
Проверьте ответ, который я разместил там. Это именно то, что вы ищете. Я в основном передаю учетные данные пользователя в свой веб-сервис для аутентификации.
Надеюсь, поможет
ура
1.ksoap2 имеет две версии для доступа к веб-сервису. SoapEnvelope.VER10 & SoapEnvelope.VER11 & SoapEnvelope.VER12, проверьте его;
2.И вы добавляете разрешение в AndroidManifast.xml?
<uses-permission android:name="android.permission.INTERNET" />
3. WebService основан на HTTP или HTTPS? В вашем коде они HttpTransportSE или HttpsServiceConnectionSE.
4. Если ваш эмулятор подключен к Интернету, проверьте символ "3G".
5. Наконец, это также беспорядок с версией ksoap2.jar.