1

I'm about to develop an application for blackberry that transport some data through a native socket connection to a server. This can be done easily in Java but I was told the issue with this approach is that most blackberries have some sort of restricted internet access and that the socket connection would not work.

Is this true? Typically a blackberry bought from a store in North America with a data plan, do they have unrestricted access to the internet (in terms of ports etc)?

erotsppa
  • 14,248
  • 33
  • 123
  • 181

2 Answers2

2

Unfortunately that is a carrier dependent issue. I know, for example, that Rogers Blackberries have the access you are looking for, where the Bell Blackberries I've worked with don't.

Richard
  • 8,920
  • 2
  • 18
  • 24
  • Can you give a little bit more details, for example Bell Blackberries don't because of what? They are using BIS access only land no APN access or something? – erotsppa Dec 08 '09 at 19:17
  • Bell CDMA devices I have experience with have no APN facility so you are limited to BIS/BIS-B/BES. – Richard Dec 08 '09 at 20:44
  • I find that suprirsing, so you are saying a large % of blackberry users basically cannot use internet apps which basically renders a lot of stuff from the AppWorld useless? – erotsppa Dec 08 '09 at 21:53
  • I think you're missing the point. Direct TCP access is not the preferred method of accessing the Internet with a Blackberry. Each carrier may (and probably do) have different APNs, some (like Rogers) have many, making correct configuration problematic for a developer. The supported, and portable, access method for socket access is BES or BIS-B. If you can't, or won't use those methods the next best is using HTTP semantics over BIS. This actually works very well, especially in a mobil, random connection state context. – Richard Dec 09 '09 at 02:51
  • So whenever we develop an app which is making any internet access. We need to consider all the ways the device can make a connection. As in we'l have to chk wifi, bes mds, bis, direct tcp. Is it so?? http://www.blackberry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800451/800563/What_Is_-_Different_ways_to_make_an_HTTP_or_socket_connection.html?nodeid=826935&vernum=0 – Bohemian Dec 09 '09 at 04:45
  • That, or you can choose to only support properly provisioned devices by using default HTTP connections, or BIS-B by becomming an aliance member. – Richard Dec 09 '09 at 15:06
  • What do you mean default HTTP connections? And what is HTTP semantics over BIS? Can I choose to support only devices that can use the TCP/IP stack? – erotsppa Dec 09 '09 at 20:19
  • If you open an HTTP connection with no path selectors the device will use BES if it is activated on and Enterprise server, BIS if it is not. Of course if it doesn't have BES or BIS service this will fail. The communication must use HTTP, between the device and the MDS-CS server (either BES or BIS) the protocol is proprietory and closed, the MDS-CS server will establish the HTTP connection to the final server. So you have to use HTTP GET/POST (semantics) to communicate with the server. You may support what ever devices you wish. – Richard Dec 09 '09 at 20:37
  • You have alread been provided all of this information: http://www.blackberryforums.com/developer-forum/213141-about-start-bb-development-but-unsure-about-socket-access-available.html – Richard Dec 09 '09 at 20:38
  • I mean this is still hard to believe, a simple developer that wants to write for the AppWorld that requires TCP connectivity will either have to be an alliance member ($$) or risk it not working on 90% of the devices? – erotsppa Dec 09 '09 at 20:52
  • I think your figure of 90% is somewhat pessimistic, but if you insist that you need TCP connectivity then yes. I don't know what is so hard to believe. The benefits of Blackberry over other smartphone technology arise from the way communications are handled, which is significantly different than iPhone, Android, Windows Mobile, etc. For example, an APN app (on whatever hardware) may not work when roaming unless the user or app adapts to the carriers' APNs. A BES/BIS-B app will work anywhere Blackberry service is available. If you start by working against the tech, you will be frustrated. – Richard Dec 10 '09 at 16:38
0

If you want a good introduction that clarifies what is available check this out http://www.blackberry.com/DevMediaLibrary/view.do?name=network

Dmytro Yashkir
  • 1,225
  • 12
  • 12