Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Java Programming IT Technology

Programming Accessible Software on Java Phones? 35

LostSinner asks: "My mother, who is blind, called me recently and asked if I'd be up for a challenge. She is supremely fed up with trying to use her current cellphone (a StarTAC) and is looking for a new one. Recently, she has heard about the newer Java-enabled phones. She wants me to write a Java program which will allow her to navigate the menus, place calls, and generally use everything available to us sighted folks that she can't currently use. Though there are a few aftermarket pieces of software somewhat geared towards this, the price and the functionality (or lack thereof) are both sticking points... and what's the use of having a geek son if you don't get any benefits, right? I plan to release the code and either give the software away for free or charge a nominal fee for it. It's new ground for me, but I love a challenge. So, is a Java enabled phone the best way to go? Are there already phones out there with this functionality built in? If Java is the best way to go, what service provider and/or phones does Slashdot recommend? Thanks."
This discussion has been archived. No new comments can be posted.

Programming Accessible Software on Java Phones?

Comments Filter:
  • by Dr. Bent ( 533421 ) <ben&int,com> on Wednesday August 06, 2003 @05:53PM (#6629035) Homepage
    Java has a very rigid security system, which works well on phones because users view them as a hardware device (a phone!) and not a software platform, and so they must be reliable and secure.

    However, I would think that this would prevent you from replacing all the menus with your own code. Instead, you might want to get her something like this [cellular.co.za]
    • Yes..but the software they're talking about are running on the 9200 communicators. Mind you, these units

      A) Are fast growing out of date with newer systems
      B) Aren't in implemented in Java, rather their OS is a flavor of the Symbian OS called Series 80.

      Personally, I think that a Symbian OS based phone would be the way to go. What you would have to do is record audio bits ( rather compressed I'm sure ), that would correspond to the most commonly used features of the particular phone that you're implementing
      • Personally, I think that a Symbian OS based phone would be the way to go.

        I agree. Most phones (apart from the very newest) don't have a java api for makings calls, sending sms, looking up things in the address book, things like that. You'd also have to implement your own menus if you ever got that far.

        I don't know Symbian, but judging from the parent it seems like a much better fit.

        • well...there's Symbian, and then there's Series 60. Symbian is the OS, and Series 60 is the UI implemented on top of Symbian ( 6.1 in the case of most Newer Nokia Phones ). The reason I suggested that rather than Java is more because for things like Accessibility, and "closer to the base UI", designing and implementing his application that way, would best suit the purpose ( at least, as he's laid out his intentions that it should ). Either way, he's got a fair bit of work ahead. The amount of good documen
  • by cybermace5 ( 446439 ) <g.ryan@macetech.com> on Wednesday August 06, 2003 @06:12PM (#6629169) Homepage Journal
    For one, most Java implementations run entirely separate from the actual phone functions. You can't just replace the built-in OS.

    What, exactly, could you do that makes it easier for a blind person to use? Every phone function is already accessed with a sequence of button presses. Type a phone number, hit talk. Memorize the order of people in your phone directory. On my phone, I can access nearly every function in one to three button presses, and seldom actually look at the screen. I can't see how your Java software would be able to do better.
    • I have a co-worker that is blind, and his biggest problem is getting lost. If the wrong key is pressed on accident, it sometimes takes several keypresses before he realizes that he's in the wrong spot and then has to figure out his way back to square one (and hope nothing has been messed up). Having everything said aloud would give him the ability to navigate as anyone else would have.

      Basically this guy wants JAWS [freedomscientific.com] for his mother's cellphone. Which would be really usefull should anyone ever put something
    • Short term solution (Score:3, Informative)

      by jtheory ( 626492 )
      You're definitely going to run into problems trying to program this in Java, for now...

      However, you can get pretty close to what you want in many current phones. They are designed to be used without requiring users to keep their eyes fixed on the screen -- since that tends to cause more car crashes.

      The features you want aren't far off, though. I currently have a Motorola V60. No camera, no multiphonic ringtones... but it has voice recognition for the numbers in my phone book. I just press a button on
  • I doubt it. (Score:4, Informative)

    by duffbeer703 ( 177751 ) on Wednesday August 06, 2003 @06:16PM (#6629193)
    I think that level of processing is not available to any developer... think of the havoc that would occue when some idiot used a ringtone installation to overwrite your phonebook with an overseas sex number.

    That being said, if there is a way to do it, you'd want to look for documentation here:

    http://java.sun.com/j2me/docs/

    and here:

    http://java.sun.com/api/index.html#j2me
  • I would rather go with Erlang-enabled phones. Java is too primitive language to develop AI in a micro-scale. Erlang, as a functional logical programming language will let much more for much less space. And, by the way, you will need some of AI methods, if you want to write the agent interacting with humans using non-standard methods: your agent has to adapt to human personality and it has to recognize and auto-fix human errors. No need to mention that you'd rather use some sort of speech control rather than
    • Would we all rather have our phone run our preferred programming language and computing framework/environment?

      Call me nuts, but I'm taking matters into my own hands by developing Dynapad. It's Smalltalk- not Erlang- but it's still better than Java, although Java isn't hard to beat. (provided you're not talking about the number of millions of US dollars spent promoting and hyping it) I don't run Dynapad myself on any phones, just PDAs- but if I had a fancy smartphone- or one of those woefully crappy and
  • by TMLink ( 177732 ) on Wednesday August 06, 2003 @06:22PM (#6629242)
    While I don't have an answer for your exact question, I do have an alternative that might be an option. The Alva MPO [alvabraille.com] is a phone/pda for the blind. You can navigate through it by either audio (JAWS [freedomscientific.com] like application) or through it's braille display. Takes input through an 8-key braille keyboard. I believe it is a WinCE device, though I'm not sure what version it is running.

    Again, this is just a tad bit overkill if all she needs is a phone. However, if she's looking for something more than a phone, this might be an option.
    • The Alva MPO seems to be exactly what this guy's mom wants.
      • Except, this guy seems to want to do the programming himself. In Java. I hope the poster has the intelligence to realize that this Alva jobbie would more than fit the bill- and probably saving a lot of temporal-monetary units (assuming he bills at $10/hr or more). Let's hope that he doesn't think he can get buy buying some cheap barely-Java-capable phone with the hopes of hacking it in Java. It may be possible to code some Java, but with pretty much any phone, all of the important stuff isn't accessible
    • The Alva unit may be nice, but more than likely, it's considerably more expensive than he might be prepared to spend. ...Though I will wholeheartedly agree with you, that this unit appears to fit the bill ( especially since it's tri-band )..the question is...how much is it ? The website for it makes ZERO mention of how much DINERO ($$$) it costs.
  • by Karl J. Smith ( 184 ) on Wednesday August 06, 2003 @06:24PM (#6629258) Homepage
    I'd try a Treo600 instead, as you're much more likely to be able to get useful programming information from Palm/Handspring than from other phone manufacturers. You'll also be able to insert a memory card to hold your app and all the sound samples you'll want for the spoken menus.

    It's not out yet, but will be "soon", and you can start writing code today....

    http://www.handspring.com/developers/index.jhtml [handspring.com]

    Or rather, try this general advice - try to get developer information for a bunch of handsets. See which one gives you the most. Make sure you can do what you want (e.g. dial, which I don't think you can from java phones due to the security model) and then go with that phone.
    • ...all the sound samples you'll want for the spoken menus.

      I'm not sure if the phone's speakers can be used to play audio from software, or if the Treo 600 includes a "real" speaker; if not, sound effects/messages are pretty much out of the question, since on most Palm devices (other than a Handera and the newer Clies) the speaker is a simple tone-based one, akin to a PC speaker. Apps have been written to play sound, just like Microsoft wrote a PC Speaker Wave Driver, but the quality of both are horrible.

  • by gl4ss ( 559668 ) on Wednesday August 06, 2003 @06:44PM (#6629381) Homepage Journal
    the subject pretty much says it, you can't access the phone on low enough level with the java implementations(the sandbox they work in isn't that free, so that you can run midlets without fear of them racking up your phone tab or sending information of your simcard&etc to some malicious hacker, kind of applets but with ability to connect where-ever the device allows, they even have their own seperate from other stuff store for storing information).

    however, symbian allows for much lower level access of the device. sure the developing is a bit harder but that's the price you have to pay(it's not _that_ hard if you're familiar with c++ and the community is building up nicely so help is available).

    symbian phones include series60 from nokia(7650,3650,6650&etc) and s-e p800 there may be others as well.

    of these i'd recommend the 3650(even though she might not have use for the mmc card), the 'weird' number pad isn't that hard to use, don't know how adapting it is for the blind(i would guess pretty well adapting, should she want to train on it few hours, actually it should go pretty well, and the buttons with different functions are laid away from each other)
    • Just wanted to second this.

      You can't do much with Java on mobile phones - you can't even access the filesystem, as far as I know. I've been using a Java web browser and a Java e-mail client on my Nokia 3650, and in response to my requests for more features (like attchments), the developer has told me that Java's security model prevents any significant access to the phone.

      Symbian would definitely be the way, especially on a Nokia phone. SonyEricsson has been uncooperative with releasing specs on their

  • Ask Sun (Score:3, Informative)

    by __past__ ( 542467 ) on Wednesday August 06, 2003 @06:49PM (#6629415)
    Fankly, I would try to find someone at Sun who bothers about this. Not only are they responsible for Java, but they also care a lot about accessibility - there are many related features in Solaris and CDE, and it's one of the major areas where they contributed to Gnome, for example. (i.e. there wasn't any kind of accessibility in Gnome/Gtk before, now there is the pretty good atk, all due to them).

    There may well be someone who already thought about that. And even if not, your mothers case might just be what it takes to make them think about it.

    The trick is, of course, how to find the right person to contact. I don't really have a good idea about that. One approach would be to find a generic Sun accessibility person (for example on the related Gnome mailing list) that seems to be a nice guy, and politely ask them for a tip on who to contact.

    • That's a great idea and all, but it really wouldn't get you anywhere.

      Why the hell would Sun be interested in helping you write software for a phone that let your blind mum make cell calls? Yes, it's in Java, but that's about where Sun's interest would stop. And a lot of people use Java, and most of them don't get hand-holding from Sun. At best, Java will say "umm, get the phone's SDK and some J2ME docs. Oh, and what you want to do really isn't possible within the confined environments available on cell
  • Talk about braille outputs on Pocket PC's reminded me of a slightly Offtopic but very Interesting idea I thought of.

    I've always wondered if it's possible to make a side panel of a PDA (for example, the left side of a Clie, like the Jog Dial) have maybe a hundred little actuators and sensors that can make virtual controls like switches, dials, and sliders... it would be interesting...

    Any ideas?

  • by PapaZit ( 33585 ) on Wednesday August 06, 2003 @11:21PM (#6631533)
    You haven't really specified the problem. "She wants to do what all of us sighted people do." What, make calls? That's easy. Is there anything else? If she just wants to make phone calls, find out how she wants to do it.

    If she wants to dial the numbers, just get her a cheap Nokia "candy bar"-style phone and ensure that one or two of the keys are textured (I recommend "5" as one of them) for easy location.

    If she wants to "look up" numbers, see about one of the voice-activated phones. Sprint definitely offers them, and probably other companies. With these phones, you press a button and say "Call Bob", and it calls bob's number. Programming's a bit tricky, but that's what sons are for, right?

    Pay attention, too, to "handsfree" models. There's pressure on the cell phone companies to make models that are usable by drivers. That means simple, and usable without looking at the keypad. Sounds kind of like what you want.
    • apologies for that. she can already make calls without much of a hassle. she wants to be able to use the address book, perhaps the calendar, and she really wants to be able to determine where in the menu system she is at any time. it's incredibly easy to get lost in all of the different menus and she doesn't want to have to power down the phone or close and reopen it just to start over.
  • The very old Sprint PCS phone, NeoPoint NP-100 I think was the model number, is pretty much exactly what you're looking for. The entire phone could be programmed for voice recognition for all of it's functions.

    Last I saw them in stores, they were like $20-30.

  • Sorry, I misread the headline as how to make Java Accessible to Progammers

    Jython [jython.com]

    Welcome to the Jython homepage. Jython is an implementation of the high-level, dynamic, object-oriented language Python written in 100% Pure Java, and seamlessly integrated with the Java platform. It thus allows you to run Python on any Java platform.

    • Sorry, I misread the headline as how to make Java Accessible to Progammers

      Jython [jython.org]

      Welcome to the Jython homepage. Jython is an implementation of the high-level, dynamic, object-oriented language Python written in 100% Pure Java, and seamlessly integrated with the Java platform. It thus allows you to run Python on any Java platform.

      [I even previewed it, saw that the url was wrong but pressed submit without changing it!]
  • I work in the cell phone industry. From what I've seen, Nokia [nokia.com] offers the most accessibility for developers wanting to write Java applications for phones. For several months now they have released SDK's and Development Suites [nokia.com]. Looks like these would be farily easy to learn.
    I'm not sure if Java applications will have access to items like the phonebook, or if they would be able to dial calls. I seem to remember they won't, its a security measure to make sure applications don't dial calls which could be cha
  • Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net], Grumpy Watkins [uklinux.net],

Get hold of portable property. -- Charles Dickens, "Great Expectations"

Working...