-5

J'ai donné la permission de l'utilisateur dans l'application manifesteMon application Android ne fonctionne pas autre que la connexion wifi

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

fonctionne bien avec wifi, mais il ne fonctionne pas avec les données mobiles connection.It pas crashed.but il doesn ne donne pas de réponse.

@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

Montrez votre code ... – FrozenFire

Répondre

0

Vous pouvez faire une chose de classe commun comme celui-ci pour vérifier l'état du réseau

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/" fait référence à une adresse dans votre réseau local qui est par hasard élevé ne peut pas être accessible via GPRS. Il ne renvoie aucune erreur probablement parce que vous avez une exception gérée dans la partie new LoadImage().execute(imageurl);. Aussi cette chaîne me ressemble constructeur mais l'objet construit ne va nulle part.