2011-08-03 3 views
2

Je veux envoyer mms dans mon projet en arrière-plan, j'écris mon code comme ceci: How to send image via MMS in Android?android: ne peut pas envoyer mms quand wifi est

Mais si le wifi est, je ne peux pas envoyer des mes mms. si le wifi est éteint, je peux envoyer mes mms réussie.

lorsque le wifi est, je suis une erreur comme ceci:

08-04 11:27:06.460: ERROR/HttpConnectInterface(26830): org.apache.http.conn.ConnectTimeoutException: Connect to /10.0.0.172:80 timed out 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.conn.scheme.PlainSocketFactory.connectSocket(PlainSocketFactory.java:121) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:143) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:359) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at src.mmstest.AndroidHttpClient.execute(AndroidHttpClient.java:280) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at src.mmstest.HttpConnectInterface.sendMMS(HttpConnectInterface.java:119) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at src.mmstest.MmsTest$MmsReceiver$1.run(MmsTest.java:57) 
08-04 11:27:06.460: ERROR/HttpConnectInterface(26830):  at java.lang.Thread.run(Thread.java:1019) 

Je pense qu'il utilise le wifi pour envoyer mes mms.i ont essayé comme ça

ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
connMgr.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE, 
       "enableMMS"); 

MMS sending connectivity issues when wifi is active (Android)

Mais la question est toujours sur, S'il vous plaît donnez-moi un peu d'aide ...

Répondre

3

J'ai fixé t Il question. Avant d'envoyer les mms quand wifi est, d'abord, vous devez appeler cette méthode:

ConnectivityManager.startUsingNetworkFeature(ConnectivityManager.TYPE_MOBILE,"enableMMS"); 

Lorsque la connexion est active, vous devez appeler cette méthode:

ConnectivityManager.requestRouteToHost(ConnectivityManager.TYPE_MOBILE_MMS,PROXY); 

Si elle retourne vrai, vous peut envoyer le mms réussi.

+0

merci pour l'info mais quel est le PROXY? comment l'obtenir..S'il vous plaît répondez .. – Sando

0

J'ai eu un problème similaire, il semblerait que cela puisse être lié à l'utilisation de AndroidHttpClient (dans HttpUtils). Le remplacer par DefaultHttpClient a fait l'affaire pour moi.