-5

ich Benutzer die Erlaubnis gegeben haben, in einem offenkundigenMeine Android App funktioniert nicht anders als WiFi-Verbindung

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

App funktioniert gut mit WLAN, aber es funktioniert nicht mit der mobilen Daten crashed.but connection.it nicht doesn Antworte nicht.

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     try { 
      URL = "http://" + Helper.getip(getApplicationContext(), LoginActivity.ipindex) + "/Android_Service/LoginService.asmx"; 
      URL2= "http://"+Helper.getip(getApplicationContext(),LoginActivity.ipindex)+"/Android_Service/AndroidServices.asmx"; 
     final String imageurl="http://192.168.0.180/hrm/empimages100/" + LoginActivity.EmpNo + ".jpg"; 
     new LoadImage().execute(imageurl); 

     wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE); 
     StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); 
     StrictMode.setThreadPolicy(policy); 

     // mTitle = mDrawerTitle = getTitle(); 
     user = (ImageView) findViewById(R.id.avatar); 

     TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); 
     Deviceid = tm.getDeviceId(); 
+0

Zeigen Sie Ihren Code ... – FrozenFire

Antwort

0

Sie können wie folgt eine gemeinsame Klasse etwas machen Netzwerkstatus

public class NetworkStatus { 
    private static NetworkStatus instance = new NetworkStatus(); 
    static Context context; 
    ConnectivityManager connectivityManager; 
    NetworkInfo wifiInfo, mobileInfo; 
    boolean connected = false; 

    public static NetworkStatus getInstance(Context ctx) { 
     context = ctx; 
     return instance; 
    } 
    public boolean isOnline(Context con) { 
     try { 
      connectivityManager = (ConnectivityManager) con.getSystemService(Context.CONNECTIVITY_SERVICE); 
      NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo(); 
      connected = networkInfo != null && networkInfo.isAvailable() && networkInfo.isConnected(); 
      return connected; 
     } catch (Exception e) { 
      e.printStackTrace(); 
      Toast.makeText(context, "Check Connectivity Exception: " + e.getMessage(), Toast.LENGTH_SHORT).show(); 
      //Log.v("connectivity", e.toString()); 
     } 
     return connected; 
    } 

    public boolean isConnectedToInternet(){ 
     connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
     if (connectivityManager != null){ 
      NetworkInfo[] info = connectivityManager.getAllNetworkInfo(); 
      if (info != null){ 
       for (int i = 0; i < info.length; i++){ 
        if (info[i].getState() == NetworkInfo.State.CONNECTED){ 
         return true; 
        } 
       } 
      } 
     } 
     return false; 
    } 

} 
2

final String imageurl="http://192.168.0.180/hrm/empimages100/" bezieht sich auf eine Adresse in Ihrem lokalen Netzwerk zu überprüfen, die sich durch hohe Chance, über GPRS nicht zugänglich sein. Es gibt keinen Fehler, wahrscheinlich, weil Sie eine Ausnahme in new LoadImage().execute(imageurl); Teil verwaltet haben. Auch diese Zeichenkette sieht für mich wie Konstruktor aus, aber das gebaute Objekt geht nirgends hin.

Verwandte Themen