Well, the MMS APN trick does work.. on some devices. On others it doesn't.
Tested with 2 devices with Android 2.3.3 and 3.2 and worked.
On Samsung Galaxy Note with Android 4.0.4 it's not working. I wonder if
it's the feature string that is different or if it has something to do with
Android version...

Any hints?


On 28 January 2013 17:15, Goncalo Oliveira <gonc...@minkan.net> wrote:

> Thanks Robert, I really appreciate your help. I'll try as you suggest.
>
>
> On 28 January 2013 16:59, Robert Greenwalt <rgreenw...@google.com> wrote:
>
>> I don't think you're making your own builds, so you'll have to set the
>> APN data on each device (though you probably already have to do this as
>> it's not a public apn).  In the apn data set the type of the apn to "mms"
>> instead of "default" or blank.  Remove any default/blank apn for your
>> mcc/mnc pair.
>>
>> In your app, you will need to call
>> CM.startUsingNetworkFeature(TYPE_MOBILE, "enableMMS").  This will turn off
>> every 10 minutes (by default - may be different on different phones) so you
>> need to call it repeatedly forever perhaps every 9.5 minutes.  Then you
>> need to call requestRouteToHost(TYPE_MOBILE_MMS, int addr) for every IP
>> addr you're accessing.  Then you should be able to access the servers
>> normally.
>>
>> R
>>
>>
>> On Mon, Jan 28, 2013 at 8:34 AM, Goncalo Oliveira <gonc...@minkan.net>wrote:
>>
>>> Hi Robert, thanks for such a prompt answer.
>>>
>>> Firstly, it's 3 mb in 3 days, 1mb/day. The DNS resolves the addresses
>>> correctly, but the connections will fail. Unfortunately I don't have access
>>> to DNS servers, so it's a bit harder to capture this traffic. I've
>>> installed Onavo count to capture the traffic, and I can see the usage
>>> growing up with Android OS.
>>>
>>> The APN idea seems to be a good workaround. Breaking the brower or other
>>> apps isn't really a problem for us, as this is something very specific. Can
>>> you tell me where can I find more information on how to do this?
>>>
>>> Cheers
>>>
>>>
>>> On 28 January 2013 16:14, Robert Greenwalt <rgreenw...@google.com>wrote:
>>>
>>>> I am curious what the 3mb/day of data consists of if the servers can't
>>>> be reached.  3mb of tcp connect attempts?  DNS lookups?  If it's DNS
>>>> perhaps you could populate your local DNS server with bogus records so that
>>>> the DNS requests die down to be replaced with perhaps fewer failing connect
>>>> attempts?  Can you capture this traffic?
>>>>
>>>> You could potentially use a different APN type.  Instead of using a
>>>> default type you could put it on type IMS or type MMS.  This will involve a
>>>> bit more work for you, but if you don't a a default connection the other
>>>> apps shouldn't use any data.  This would also mean things like the browser
>>>> won't work.
>>>>
>>>>
>>>>
>>>> On Mon, Jan 28, 2013 at 3:58 AM, Goncalo Oliveira 
>>>> <gonc...@minkan.net>wrote:
>>>>
>>>>> Sorry for reopening this, but I have a consequence behavior with this
>>>>> and was hoping for some insights.
>>>>>
>>>>> As I said earlier, we are using a very specific APN that allows the
>>>>> connection only to a restricted range of servers. I managed to use a
>>>>> heartbeat every 5 minutes to workaround the GCM issue, and with the app
>>>>> everything is working fine. However, I have another consequence. Because
>>>>> the APN restricts access to anything outside "our safe little world", the
>>>>> system is consuming a whole load of data. Android OS consumed 3 mb in 
>>>>> three
>>>>> days, Google Services 416 k. In the data settings I was able to restrict
>>>>> Google Services (as well as software updates and others) from using data
>>>>> but I can't do the same for Android OS. This is killing us completely
>>>>> because we have a very restrictive data plans.
>>>>>
>>>>> Any ideas on how I can disable data transfer for everything except my
>>>>> application?
>>>>>
>>>>> Thanks
>>>>>
>>>>>
>>>>> On 21 December 2012 15:55, Goncalo Oliveira <gonc...@minkan.net>wrote:
>>>>>
>>>>>> Robert,
>>>>>>
>>>>>> Thanks again for clarifying. Basically if I open up GCM I'm allowing
>>>>>> user to work with gtalk, so I will want to avoid that.
>>>>>> Looks like sending the heartbeat every 5 minutes is the only option I
>>>>>> have left.
>>>>>>
>>>>>> Thanks for the help. Much appreciated.
>>>>>> Cheers
>>>>>>
>>>>>>
>>>>>> On 21 December 2012 15:44, Robert Greenwalt <rgreenw...@google.com>wrote:
>>>>>>
>>>>>>> I believe most of the google apps rely on GCM (calendar, gmail,
>>>>>>> contacts, talk, etc), also 3rd party apps that need pushed notifications
>>>>>>> are encouraged to use GCM.  Unless you are making a custom build and
>>>>>>> denying app installs you probably have apps that will be broken without 
>>>>>>> GCM.
>>>>>>>
>>>>>>> Of course, if you have very limited data plans on special purpose
>>>>>>> phones, you may wish for all those apps to be broken - they can use 
>>>>>>> quite a
>>>>>>> bit of data.
>>>>>>>
>>>>>>> I don't know what GCM's steady-state data rate is for a device.  I
>>>>>>> believe it does a carrier keep-alive ping every 20-30 minutes.  It also
>>>>>>> checks for updates whenever the screen comes on.  Other than that I 
>>>>>>> think
>>>>>>> it is dependent on user or network-originating app traffic.
>>>>>>>
>>>>>>> R
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Dec 21, 2012 at 2:23 AM, Goncalo Oliveira <
>>>>>>> gonc...@minkan.net> wrote:
>>>>>>>
>>>>>>>> Robert,
>>>>>>>>
>>>>>>>> Thank you for the explanation. There's just one more thing that I'd
>>>>>>>> like you to help me understand. If we choose to allow the GCM 
>>>>>>>> connection,
>>>>>>>> what kind of traffic can we expect to have? Like I said previously, we 
>>>>>>>> have
>>>>>>>> a very tight data plan, so if the GCM connection adds more than just a 
>>>>>>>> few
>>>>>>>> bytes, that might be a bad idea to enable it. Also, by enabling GCM
>>>>>>>> connection, what am I allowing the users to do? Can they use gtalk or
>>>>>>>> something else?
>>>>>>>>
>>>>>>>> Cheers
>>>>>>>>
>>>>>>>>
>>>>>>>> On 21 December 2012 00:17, Robert Greenwalt 
>>>>>>>> <rgreenw...@google.com>wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> The GCM is part of the platform - 3rd party apps depend on it and
>>>>>>>>> so there's no mechanism for deactivating it.
>>>>>>>>>
>>>>>>>>> If you can allow the GCM connection to succeed, you should avoid
>>>>>>>>> the current problems, but if you're going for a secure platform you 
>>>>>>>>> may not
>>>>>>>>> want the GCM connection to succeed.
>>>>>>>>>
>>>>>>>>> You could potentially hijack the dns resolution: have your dns
>>>>>>>>> server report an address you control for mtalk.google.com, then
>>>>>>>>> allow connections to your own server, but no real functionallity.  
>>>>>>>>> With
>>>>>>>>> some reverse engineering you may be able to get to a quiet connection 
>>>>>>>>> that
>>>>>>>>> doesn't trigger these data-stall triggers.
>>>>>>>>>
>>>>>>>>> The easiest solution is to adjust your keep-alive ping to < 6
>>>>>>>>> minutes.  That will effect the battery, but less than allowing the 
>>>>>>>>> resets
>>>>>>>>> to happen.
>>>>>>>>>
>>>>>>>>> I have created internal issues to examine this issue, but even if
>>>>>>>>> we fixed it today internally you wouldn't see it for a long while.  
>>>>>>>>> The
>>>>>>>>> first issue is to find what traffic is causing this connection reset. 
>>>>>>>>>  The
>>>>>>>>> second is to re-eval counting udp packets (I am assuming that's 
>>>>>>>>> causing
>>>>>>>>> part of this problem).
>>>>>>>>>
>>>>>>>>> I'm sorry you have hit this issue.
>>>>>>>>>
>>>>>>>>> Robert
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Dec 20, 2012 at 4:30 AM, Goncalo Oliveira <
>>>>>>>>> gonc...@minkan.net> wrote:
>>>>>>>>>
>>>>>>>>>> Robert,
>>>>>>>>>>
>>>>>>>>>> Any updates on this?
>>>>>>>>>>
>>>>>>>>>> Cheers
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On 18 December 2012 10:06, Goncalo Oliveira 
>>>>>>>>>> <gonc...@minkan.net>wrote:
>>>>>>>>>>
>>>>>>>>>>> consider opening up the addre
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> Gonçalo Oliveira
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>>> Groups "Android Developers" group.
>>>>>>>>>> To post to this group, send email to
>>>>>>>>>> android-developers@googlegroups.com
>>>>>>>>>> To unsubscribe from this group, send email to
>>>>>>>>>> android-developers+unsubscr...@googlegroups.com
>>>>>>>>>> For more options, visit this group at
>>>>>>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "Android Developers" group.
>>>>>>>>> To post to this group, send email to
>>>>>>>>> android-developers@googlegroups.com
>>>>>>>>> To unsubscribe from this group, send email to
>>>>>>>>> android-developers+unsubscr...@googlegroups.com
>>>>>>>>> For more options, visit this group at
>>>>>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Gonçalo Oliveira
>>>>>>>>
>>>>>>>> --
>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>> Groups "Android Developers" group.
>>>>>>>> To post to this group, send email to
>>>>>>>> android-developers@googlegroups.com
>>>>>>>> To unsubscribe from this group, send email to
>>>>>>>> android-developers+unsubscr...@googlegroups.com
>>>>>>>> For more options, visit this group at
>>>>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>>>>
>>>>>>>
>>>>>>>  --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Android Developers" group.
>>>>>>> To post to this group, send email to
>>>>>>> android-developers@googlegroups.com
>>>>>>> To unsubscribe from this group, send email to
>>>>>>> android-developers+unsubscr...@googlegroups.com
>>>>>>> For more options, visit this group at
>>>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Gonçalo Oliveira
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Gonçalo Oliveira
>>>>>
>>>>> --
>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Android Developers" group.
>>>>> To post to this group, send email to
>>>>> android-developers@googlegroups.com
>>>>> To unsubscribe from this group, send email to
>>>>> android-developers+unsubscr...@googlegroups.com
>>>>> For more options, visit this group at
>>>>> http://groups.google.com/group/android-developers?hl=en
>>>>> ---
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Android Developers" group.
>>>>> To unsubscribe from this group, send email to
>>>>> android-developers+unsubscr...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>>
>>>>>
>>>>>
>>>>
>>>>  --
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Android Developers" group.
>>>> To post to this group, send email to
>>>> android-developers@googlegroups.com
>>>> To unsubscribe from this group, send email to
>>>> android-developers+unsubscr...@googlegroups.com
>>>> For more options, visit this group at
>>>> http://groups.google.com/group/android-developers?hl=en
>>>> ---
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Android Developers" group.
>>>> To unsubscribe from this group, send email to
>>>> android-developers+unsubscr...@googlegroups.com.
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Gonçalo Oliveira
>>>
>>> --
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Android Developers" group.
>>> To post to this group, send email to android-developers@googlegroups.com
>>> To unsubscribe from this group, send email to
>>> android-developers+unsubscr...@googlegroups.com
>>> For more options, visit this group at
>>> http://groups.google.com/group/android-developers?hl=en
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "Android Developers" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to android-developers+unsubscr...@googlegroups.com.
>>>
>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>
>>>
>>>
>>
>>  --
>> --
>> You received this message because you are subscribed to the Google
>> Groups "Android Developers" group.
>> To post to this group, send email to android-developers@googlegroups.com
>> To unsubscribe from this group, send email to
>> android-developers+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/android-developers?hl=en
>> ---
>> You received this message because you are subscribed to the Google Groups
>> "Android Developers" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to android-developers+unsubscr...@googlegroups.com.
>>
>> For more options, visit https://groups.google.com/groups/opt_out.
>>
>>
>>
>
>
>
> --
> Gonçalo Oliveira
>



-- 
Gonçalo Oliveira

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Android Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to android-developers+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to