Re: [Apertium-stuff] Apertium for Android version 1.0 soon to be released
2012/12/27 Xavi Ivars x...@infobenissa.com In the end I resolved to fuse the code into 5 classes where there is no databases involved. Clear now. Anyway, I would create different apps, or maybe one main activity and make it remember your preferred option (simple or advanced). Having two different icons when installing an app, both icons having the same name and logo, and both opening an almost identicall (from UI perspective) app is quite confusing. Yes, you are right of course. Sorry for the confusion! Here's what I propose We create 2 apps. A) A simple to understand 'Apertium basic' app which have only internet permissions - for the paranoid security concerned guys, which can turn internet off while using the app. It does not have SD card access. Users can only install pairs listed in https://apertium.svn.sourceforge.net/svnroot/apertium/builds/language-pairs. (Ive investigated in depth whether we could do without internet permission and let the user download pairs in the browser, but the browser stores downloads on SD card so we wouldnt be able to access the data after download) B) A complex 'Apertium extended' app for the casual user that doesent care about giving permissions for reading SMSses, internet access, reading SD card etc etc. Here we have an SD card browser Arink has made, which can be used for manually installing home-brewn pairs. Arink and others can freely add fancy stuff, like accessing your accounts for translating email or something, surf and translate interception, NFC or whatever they like The 'extended' will use the 'basic' as library so they share code base. Jacob -- Jacob Nordfalk http://profiles.google.com/jacob.nordfalk javabog.dk Androidudvikler og -underviser på IHKhttp://cv.ihk.dk/diplomuddannelser/itd/vf/MAUog LundBendsen https://www.lundogbendsen.dk/undervisning/beskrivelse/LB1809/ -- Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and much more. Get web development skills now with LearnDevNow - 350+ hours of step-by-step video tutorials by Microsoft MVPs and experts. SALE $99.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122812___ Apertium-stuff mailing list Apertium-stuff@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/apertium-stuff
Re: [Apertium-stuff] Apertium for Android version 1.0 soon to be released
Jacob Nordfalk jacob.nordf...@gmail.com writes: 2012/12/25 Kevin Brubeck Unhammer unham...@fsfe.org Xavi Ivars x...@infobenissa.com writes: In all 3 devices I got the bug of two icons in the app launcher. The two Apertium icons were the two versions: Arinks work, and a more simple derivative where code from Mikels 'Apertium-Caffeine' is fused with Arinks code and simplified a lot. Ah, that cleared up a lot :-) Arinks is the more sophisticated, i.a. is has two seperate buttons for from and to where the simple just have one Choose languages button. But with sophistication also comes completity; Arinks code is using databases and contains of ~25 classes and, as a result of the sophistication, will be hard to use as example code for others to follow/import into their own projects. Another consequence of the complexity was that I had trouble making it react robustly to screen turning and application restarts. In the end I resolved to fuse the code into 5 classes where there is no databases involved. :) on second startup the translation direction said from → to, where clicking the arrow gave There is no language direction from from to to, and clicking to gave the heading Translated to and no language. Only clicking from has an effect. Perhaps the buttons should be grayed out or something when they're not useful. Also, a little UI request: if there's only one possible direction, it would make sense to auto-pick that; and if there's only one possible to for a certain from, that should be auto-picked on selecting that from. This is Arink's code. Sorry for the confusion! Please update the app or choose the other icon. From inside the basic activity you can choose 'Show extended example' after pressing the MENU button to use Arink's code. About the permissions, what I would do is try to require as few permissions as possible. I mostly agree (either see what feature requests people make, or at least have a simple base that others can build on). I think SD card installation would be good though; on my Desire I had to remove some stuff before being able to install. The app does 1) work well on older phones and 2) work without a net connection, so I'm guessing SD install would make it fit well into the older-phone-market (as well as work great on newer phones). Ive changed the app so it can be moved to SD card. This might make it work on older phones with memory constraints. Could you download again and try if you can move it to SD card and see if it helps? https://apertium.svn.sourceforge.net/svnroot/apertium/builds/apertium-android/ I'm not quite sure how to read the space requirements: On phone, no lang.pair: Total 2.05MB App 2.05MB Data 0.00KB On SD Card, no lang.pair: Total 1.65MB App 1.64MB Data 4.00KB On phone, one lang.pair: Total 9.93 MB App 2.05MB Data 7.88MB On SD Card, one lang.pair: Total 9.52 MB App 1.64MB Data 7.88MB -- Kevin Brubeck Unhammer GPG: 0x766AC60C -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Apertium-stuff mailing list Apertium-stuff@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/apertium-stuff
Re: [Apertium-stuff] Apertium for Android version 1.0 soon to be released
Wow! so much of work.. Sorry, I was busy with some university sport events. App working fine on my Galaxy y. Arinks is the more sophisticated, i.a. is has two seperate buttons for from and to where the simple just have one Choose languages button. That is because of a reason, instead of populating list with all available translations directions, its better to fill from and to with languages In the end I resolved to fuse the code into 5 classes where there is no databases involved. Means there will be no desktop widgets shortcuts where clicking the arrow gave There is no language direction from from to to, and clicking to gave the heading Translated to and no language. Only clicking from has an effect. Perhaps the buttons should be grayed out or something when they're not useful. That can be done.. its good to have minimal featured app but, desktop widgets and similar UI is good for user experience. Arink Computer Science and Engineering Indian Institute of Technology Ropar www.arinkverma.in -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d___ Apertium-stuff mailing list Apertium-stuff@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/apertium-stuff
Re: [Apertium-stuff] Apertium for Android version 1.0 soon to be released
Xavi Ivars x...@infobenissa.com writes: Hi, I've tested it with two old (SonyEricsson Xperia X10 mini and Samsung Galaxy S) mobiles and a Nexus7 tablet. With the Nexus7 = awesome! But not many differences with the old verision. I guess 2Gb of RAM make this feature not as important as in other older devices. With the GalaxyS = really-really-really awesome! The difference between this version and the last one that loaded the whole files is really big. The translations are really fast, including the first one. With the X10 mini = I couldn't install any package. I got some space errors (the device has a really small storage). Also, because of bad data connectivity, there was an IOException while downloading the lang package, and the expection message was shown in the target textarea. In all 3 devices I got the bug of two icons in the app launcher. As Kevin, I think I would remove all the metainformation about the translation process. Another thing I noticed now (I think this may have been a problem before too): on second startup the translation direction said from → to, where clicking the arrow gave There is no language direction from from to to, and clicking to gave the heading Translated to and no language. Only clicking from has an effect. Perhaps the buttons should be grayed out or something when they're not useful. Also, a little UI request: if there's only one possible direction, it would make sense to auto-pick that; and if there's only one possible to for a certain from, that should be auto-picked on selecting that from. About the permissions, what I would do is try to require as few permissions as possible. I mostly agree (either see what feature requests people make, or at least have a simple base that others can build on). I think SD card installation would be good though; on my Desire I had to remove some stuff before being able to install. The app does 1) work well on older phones and 2) work without a net connection, so I'm guessing SD install would make it fit well into the older-phone-market (as well as work great on newer phones). Anyway, THANKS A LOT Jacob for your work with this app. Yes, thanks Jacob – and Mikel and Arink; offline translation on a phone is quite awesome :-) -- Kevin Brubeck Unhammer GPG: 0x766AC60C -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Apertium-stuff mailing list Apertium-stuff@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/apertium-stuff
Re: [Apertium-stuff] Apertium for Android version 1.0 soon to be released
Hi, I've tested it with two old (SonyEricsson Xperia X10 mini and Samsung Galaxy S) mobiles and a Nexus7 tablet. With the Nexus7 = awesome! But not many differences with the old verision. I guess 2Gb of RAM make this feature not as important as in other older devices. With the GalaxyS = really-really-really awesome! The difference between this version and the last one that loaded the whole files is really big. The translations are really fast, including the first one. With the X10 mini = I couldn't install any package. I got some space errors (the device has a really small storage). Also, because of bad data connectivity, there was an IOException while downloading the lang package, and the expection message was shown in the target textarea. In all 3 devices I got the bug of two icons in the app launcher. As Kevin, I think I would remove all the metainformation about the translation process. About the permissions, what I would do is try to require as few permissions as possible. Anyway, THANKS A LOT Jacob for your work with this app. -- Xavi Ivars http://xavi.ivars.me -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d___ Apertium-stuff mailing list Apertium-stuff@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/apertium-stuff
Re: [Apertium-stuff] Apertium for Android version 1.0 soon to be released
Al 12/24/2012 08:06 PM, En/na Xavi Ivars ha escrit: In all 3 devices I got the bug of two icons in the app launcher. Me too in a Samsung Galaxy Tab 2. Mikel -- Mikel L. Forcada (http://www.dlsi.ua.es/~mlf/) Departament de Llenguatges i Sistemes Informàtics Universitat d'Alacant E-03071 Alacant, Spain Phone: +34 96 590 9776 Fax: +34 96 590 9326 -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d ___ Apertium-stuff mailing list Apertium-stuff@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/apertium-stuff
[Apertium-stuff] Apertium for Android version 1.0 soon to be released
During Google Summer of Code we had two great students working hard to enable Apertium into the mobile world: - Mikel Artetxe did a great job making lttoolbox-java embeddable, spinning off a lot of good stuff, such as Apertium-Caffeinehttp://wiki.apertium.org/wiki/Apertium-Caffeineand a one-click installer for trying out language pairshttp://wiki.apertium.org/wiki/Language_pair_packages#List_of_ready-to-use_packages - Arink Verma wrote an Apertium Androidhttp://www.arinkverma.in/2012/08/summer-of-2012-with-google.htmlapp using lttoolbox-java, that allows the user to do off-line, in-phone translation using Apertium As could and should be expected after any GSoC where was work left to do. In this case the app was suffering from memory constraint problems; in Android you are allowed to use down to 16MB of RAM, a situation that needed to be handled properly before it would work properly across all devices. Those of you that tested the previous versions can confirm that. After the GSoC I have been continuing optimizing, simplifying and unifying the code and I am proud to present a fresh version of lttoolbox-java *that can run on a very tiny amount of RAM* and *which is faster than ever*, deployed in the world's first open source offline, embedded in-device machine translation system, as an Android app. Download and install it from here: https://apertium.svn.sourceforge.net/svnroot/apertium/builds/apertium-android/ The app has been tested and runs on Android 1.6 and later. I would like to ask every one with an Android phone to install this app and jugde if there are any things that needs to be done before we publish it. (You have to enable 'install from unknown sources' first and uninstall previous versions) Please note that first translation run is slow, as it needs to index files, and optimize transfer bytecode. How was the lttoolbox-java 'memory magic' done? Well, it's called memory mapping. Apertium mainly consists of transducers, which is big chunks of memory with a binary representation of the dictionary files. lttoolbox and old lttoolbox-java does the 'usual' thing: Load all these transducers at startup time, pre-builds data structures in memory representing the whole file, and keeps them there in memory during processing. The new lttoolbox-java indexes the files in the first run and saves these transducer index cache files for re-use later. After first run it only loads the parts of the transducers which it needs from disk. This brings loading time down to near zero (lttoolbox-java is much faster at loading transducers than lttoolbox). Loading is done by *memory-mapping*, which is a sophisticated way of doing random file access; you get a chunk of memory which represent the file, each time you read bytes the operating system will make that this part of the file has been loaded into memory and free the memory afterwards when not needed anymore. Basically, instead of prebuilding the data structures, I just look in the files on a per-needed basis. This is much faster as translation tasks are only using a tiny fraction of the transducers. The source is in SVN, and you can get an impression of the work looking there: lttoolbox-java: http://apertium.svn.sourceforge.net/viewvc/apertium/trunk/lttoolbox-java/src/?view=log Android app: http://apertium.svn.sourceforge.net/viewvc/apertium/trunk/apertium-mobile/apertium-android/src/?view=log Ive done a lot of work on simplifying the app to make it robust and adoptable. In the directory http://apertium.svn.sourceforge.net/viewvc/apertium/trunk/apertium-mobile/apertium-android/src/org/apertium/android/?pathrev=42121you see my unification and simplification. In the package 'extended' is Arink's work (modified), which includes som extended functions, such as a widget, SMS translator, database, file manager. I'd like to ask you what you think about permissions and functionality: Should the Apertium app we publish be a basic app, simple for others to adopt, requring no permissions (apart from internet permission to download pairs), or a full-blown app able to access your SMSes and SD card? Currently the app requires permissions to read your SMS'es and the data on your SD Card. SD Card access would be nice for manual installation of self-compiled language pairs (but would you really deploy unpublished work in your phones?) and for storing language pairs (each one takes ~10MB when it is uncompressed - but how many would a user install?). Yours, Jacob -- Jacob Nordfalk http://profiles.google.com/jacob.nordfalk javabog.dk Androidudvikler og -underviser på IHKhttp://cv.ihk.dk/diplomuddannelser/itd/vf/MAUog LundBendsen https://www.lundogbendsen.dk/undervisning/beskrivelse/LB1809/ -- LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add