Android 应用程序没有';不适用于4.0.3,但适用于2.3.3

Android 应用程序没有';不适用于4.0.3,但适用于2.3.3,android,android-arrayadapter,android-spinner,android-4.0-ice-cream-sandwich,android-sdk-2.3,Android,Android Arrayadapter,Android Spinner,Android 4.0 Ice Cream Sandwich,Android Sdk 2.3,我写了一个应用程序,它在安卓2.3.3上正常工作,但在安卓4.0.3上不工作 我在AndroidManifest文件中指定minsdk=“10”和targetsdk=“15” 我正在我的应用程序中使用.net web服务,此页面出现错误 myspinner = (Spinner) findViewById(R.id.ihtiyacsec); ArrayAdapter<String> adapter = new ArrayAdapter<String>(th

我写了一个应用程序,它在安卓2.3.3上正常工作,但在安卓4.0.3上不工作

我在AndroidManifest文件中指定minsdk=“10”和targetsdk=“15”

我正在我的应用程序中使用.net web服务,此页面出现错误

myspinner = (Spinner) findViewById(R.id.ihtiyacsec);
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, SektorList);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        myspinner.setAdapter(adapter);
myspinner=(微调器)findViewById(R.id.ihtiyacsec);
ArrayAdapter=新的ArrayAdapter(这个,android.R.layout.simple\u微调器\u项,SektorList);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
设置适配器(适配器);
SektorList为空

我正在使用ksoap2访问我的web服务

这是我的功能

SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME);
        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.bodyOut=request;
        envelope.dotNet = true;     
        envelope.setOutputSoapObject(request);
        HttpTransportSE androidHttpTransport = new HttpTransportSE(URL);
        androidHttpTransport.debug = true;

       try {

       androidHttpTransport.call(SOAP_ACTION, envelope);
       SoapObject response = (SoapObject) envelope.getResponse();
       SektorList = new String[response.getPropertyCount()];

      for(int i=0;i<response.getPropertyCount();i++){          
               SektorList[i] = response.getPropertyAsString(i).toString();     
      }      
} 
        catch (Exception e) {           
            e.printStackTrace();
       }
SoapObject请求=新的SoapObject(名称空间、方法名称);
SoapSerializationEnvelope=新的SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.bodyOut=请求;
envelope.dotNet=true;
envelope.setOutputSoapObject(请求);
HttpTransportSE androidHttpTransport=新的HttpTransportSE(URL);
androidHttpTransport.debug=true;
试一试{
调用(SOAP_操作,信封);
SoapObject响应=(SoapObject)信封.getResponse();
SektorList=新字符串[response.getPropertyCount()];
对于(int i=0;i您正在主线程上执行一个(可能较慢的)网络操作。如果您的目标SDK为11(蜂巢)或更高,这将在蜂巢或更高版本上抛出一个
NetworkOnMainThreadException
,因为这种行为会阻塞UI并导致应用程序无响应


您可以使用一个来解决这个问题,在
doInBackground(..)

中加载数据,这是一个非常常见的问题。从Android HC+开始,您不允许在主UI线程中执行繁重的网络操作。要解决这个问题,您可以:从清单中删除“targetsdk”标记(不推荐)或者只使用asynctask进行网络操作。

我尝试从清单中删除targetsdk标记,但仍然不起作用。我尝试使用asynctask进行此操作,然后我将在此处写入结果,谢谢。我在使用asynctask时遇到一些问题。请查看此信息,我尝试使用asynctask进行此操作,然后我将在此处写入结果,谢谢使用asynctask时遇到一些问题。请查看此