웹 서비스를 호출하는 Android 코드를 작성했습니다. 이제 해당 앱을 에뮬레이터가 아닌 실제 휴대 전화로 실행하고 싶습니다. Android Emulator 및 URL http://10.0.2.2/test/Service1.asmx을 사용하여 앱을 실행하면 출력이 표시되지만 http://192.168.56.1/test/Service1.asmx으로 URL을 변경하면 Android 스마트 폰에서 동일한 출력이 표시되지 않습니다. 연결이 거부되었다는 오류가 발생합니다.Android 기기에서 웹 서비스 출력을 볼 수 없습니다.
누군가가 나이 문제 여기
를 해결하는 데 도움 주시기 바랍니다하면 안드로이드 코드 :
가 분명히 작동하기 때문에 네트워크 엔드 포인트를 사용할 수있는 경우이 문제가 안드로이드 소스와 함께 거주하지 않는 package projects.ksoap2sample;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;
import android.app.*;
import android.os.*;
import android.widget.TextView;
public class ksoap2sample extends Activity {
/** Called when the activity is first created. */
private static final String SOAP_ACTION = "http://tempuri.org/HelloWorld";
private static final String METHOD_NAME = "HelloWorld";
private static final String NAMESPACE = "http://tempuri.org/";
private static final String URL = "http://192.168.56.1/test/Service1.asmx";
TextView tv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv=(TextView)findViewById(R.id.text1);
call();
}
public void call()
{
try {
SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.dotNet=true;
envelope.setOutputSoapObject(request);
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
androidHttpTransport.call(SOAP_ACTION, envelope);
Object result = (Object)envelope.getResponse();
tv.setText(result.toString());
} catch (Exception e) {
tv.setText(e.getMessage());
}
}
}
나는 그것에 대해 전혀 모르겠다. 제발 내가 선택한 포트가 트래픽을 허용하는지 확인해야 어떻게 말해 줄 수 있습니까? 모든 설정을 완료해야합니까? –
@ Parth_90 방화벽의 유형에 따라 다르므로 솔직히 말해서 매우 광범위한 질문입니다. 호스트가 기본 Windows 방화벽을 사용하는 Windows PC 인 서비스의 .asmx 확장으로 인해 가정 할 것입니다. 이 경우 포트 80 트래픽을 기계 안팎으로 허용하는 규칙을 사용할 수 있습니다. 물론 GUI를 통한 특정 절차는 실행중인 Windows의 버전에 따라 다르지만 Google의 빠른 검색은 사용 가능한 가이드를 보여줍니다. http://maximumpcguides.com/windows-7/opena-a- port-in-windows-7s-firewall/ –
Yes ur rite .. Windows 7을 사용하고 .NET (C# 2008)에서 C#을 사용하여 웹 서비스를 만들었습니다. 또한 Android 앱 개발을 위해 Eclipse를 사용하고 있습니다. 링크를 주셔서 감사합니다. 그걸 시도하고 대답을 시도해보십시오. –