Saturday, October 9, 2010

Using Skype for Android in Japan


While Skype for Android is not yet available in the Japanese and Chinese markets, it can be downloaded by using MarketAccess, or alternatively, a direct link to the uploaded apk. I verified that the apk from the direct link has the same md5 sum as what is in the market (a1cb67d3a30e188026405bf2c673c4bb)

Skype requires at least Android 2.1, so this rules out all currently available Docomo android handsets not running custom ROMs. And for those of you waiting for the Samsung Galaxy S, you're also outta luck (for now) because skype won't run on it, presumably because of the proprietary UI (More reasons why I don't like proprietary UIs).

However, the developers have a bit of work to do. Based on my limited experience with Docomo's ARMv6-powered ht-03a running CM 6.0 and overclocked to 576 MHz, the current version is not worth the 14 MB (!) it is using on the /data partition. (It can be moved to the SD card.) Call quality over both 3G with a strong signal and wifi was horrible. Latency was extremely high and it seemed like only one in a thousand packets were transmitted successfully (see below for errors from my log).

Correct me if I'm wrong, and I'm sure someone will, but both the first gen iPhone and 3G I believe are also equipped with an ARMv6 processor, albeit it of slightly specs. So, if skype works flawlessly on the these handsets, there may be hope for the ht-03a. (I realize that the ht-03a isn't even supposed to be able to run Android 2.x and also that skype could simply be beyond it's capabilities.)

Below is my experience with skype (ht-03a; CM 6.0; 576 MHz; 32 MB swap, 20 swappiness, class 6 SD):
  • It is very laggy using the dialer around the edges.
  • Login credentials are not saved, and automatic login doesn't work after signing out.
  • Returning to skype after using another app lands you on the sign in page, where you may have to sign in again, even if you ticked the automatic login checkbox, and even though there is a currently-signed-into-skype notification in the notification bar.
  • Calls connect over both 3G and wifi.
  • Call quality is so bad it is unusable on the ht-03a. (See comments, it works on the more powerful v7 chips.)
  • Signing out is convoluted, requiring you to click on your profile information and change you status to signed out.
  • After signing out, the process remains active, so you have to kill it from either application management or running processes.

Here is a summary of my log from a two minute call over wifi:

First we start with something that seems normal.

10-09 10:38:38.318: DEBUG/AudioHardwareMSM72XX(111): audpre_index = 8, tx_iir_index = 17
10-09 10:38:38.358: DEBUG/HTC Acoustic(111): msm72xx_enable_audpre: 0x0000
10-09 10:38:38.378: INFO/AudioHardwareMSM72XX(111): Routing audio to Handset
10-09 10:38:38.398: DEBUG/HTC Acoustic(111): msm72xx_enable_audpp: 0x0000
10-09 10:38:38.398: INFO/AudioHardwareMSM72XX(111): Routing audio to Handset
10-09 10:38:38.398: DEBUG/HTC Acoustic(111): msm72xx_enable_audpp: 0x0000
10-09 10:38:38.459: INFO/AudioHardwareMSM72XX(111): Routing audio to Handset
10-09 10:38:38.469: DEBUG/AudioHardwareMSM72XX(111): audpre_index = 8, tx_iir_index = 17
10-09 10:38:38.469: DEBUG/HTC Acoustic(111): msm72xx_enable_audpre: 0x0000
10-09 10:38:38.469: INFO/AudioHardwareMSM72XX(111): do input routing device 40000
10-09 10:38:38.469: INFO/AudioHardwareMSM72XX(111): Routing audio to Handset
10-09 10:38:38.469: DEBUG/HTC Acoustic(111): msm72xx_enable_audpp: 0x0000


Then we get 646 instances of this...

WARN/AudioFlinger(111): RecordThread: buffer overflow

Intermixed with 18 occurrences of this.

obtainBuffer timed out (is the CPU pegged?) 0x329bf0 user=000f5534, server=000f4b00

And of course, 32 of these.

INFO/ActivityManager(143): Low Memory: No more background processes.

We get a nice summary of processor usage.

10-09 10:39:47.558: ERROR/ActivityManager(143): ANR in com.android.settings
10-09 10:39:47.558: ERROR/ActivityManager(143): Reason: Broadcast of Intent { act=android.intent.action.ACTION_POWER_CONNECTED flg=0x10000000 cmp=com.android.settings/.widget.SettingsAppWidgetProvider }
10-09 10:39:47.558: ERROR/ActivityManager(143): Load: 6.64 / 4.28 / 3.67
10-09 10:39:47.558: ERROR/ActivityManager(143): CPU usage from 15324ms to 870ms ago:
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 14% = 13% user + 0% kernel / faults: 43 minor 3 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   mmcqd: 13% = 0% user + 13% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   system_server: 12% = 0% user + 12% kernel / faults: 3359 minor 569 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 7% = 6% user + 1% kernel / faults: 54 minor 6 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 6% = 5% user + 1% kernel / faults: 125 minor 27 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   tiwlan_wifi_wq: 5% = 0% user + 5% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   adbd: 4% = 0% user + 3% kernel / faults: 116 minor 1 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   om.skype.raider: 4% = 2% user + 1% kernel / faults: 1001 minor 74 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   mediaserver: 4% = 1% user + 2% kernel / faults: 218 minor 9 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 3% = 1% user + 1% kernel / faults: 16 minor 6 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   kswapd0: 2% = 0% user + 2% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   synaptics_wq: 1% = 0% user + 1% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   akmd: 0% = 0% user + 0% kernel / faults: 100 minor 1 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   m.android.phone: 0% = 0% user + 0% kernel / faults: 496 minor 36 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   e.process.gapps: 0% = 0% user + 0% kernel / faults: 612 minor 62 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 0% = 0% user + 0% kernel / faults: 5 minor
10-09 10:39:47.558: ERROR/ActivityManager(143):   events/0: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   kblockd/0: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   com.android.mms: 0% = 0% user + 0% kernel / faults: 364 minor 12 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   d.process.acore: 0% = 0% user + 0% kernel / faults: 317 minor 15 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   kondemand/0: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   usb_mass_storag: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   binder: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   wpa_supplicant: 0% = 0% user + 0% kernel / faults: 113 minor 1 major
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 0% = 0% user + 0% kernel / faults: 6 minor
10-09 10:39:47.558: ERROR/ActivityManager(143):   skypekit: 0% = 0% user + 0% kernel / faults: 29 minor 6 major
10-09 10:39:47.558: ERROR/ActivityManager(143):  +ndroid.settings: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):  +sh: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):  +logcat: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143):  -id.input.simeji: 0% = 0% user + 0% kernel
10-09 10:39:47.558: ERROR/ActivityManager(143): TOTAL: 100% = 49% user + 49% kernel + 0% iowait + 0% softirq


And finally, the skype process stops and restarts indefinitely until I killed it.

10-09 10:45:20.978: INFO/ActivityManager(143): Process com.skype.raider (pid 12568) has died.
10-09 10:45:20.988: WARN/ActivityManager(143): Scheduling restart of crashed service com.skype.raider/.service.SkypeServiceController in 5000ms
10-09 10:45:26.018: INFO/ActivityManager(143): Start proc com.skype.raider for service com.skype.raider/.service.SkypeServiceController: pid=12575 uid=10087 gids={3003, 1015}

27 comments:

  1. I'm subject to the same annoyances on my Acer Liquid running Android 2.2 here in Sweden except for the all-important call quality which is fine for me.

    ReplyDelete
  2. I tried it on my Softbank HTC Desire (x06HT), when I was still running 2.1, and it worked perfectly fine. Call quality was as good as on my laptop, there was no lag. It's still not perfect, but I didn't see any *major* issues like you saw... I deleted it before I updated to 2.2, I'll have to try it again now that I'm running Froyo.

    Ravlen

    ReplyDelete
  3. Well, the 1 GHz processor in the Desire certainly will make a difference. Basically, it maxing out the little ol ht-03a.

    ReplyDelete
  4. Yeah, I just wanted to point out that it is usable in Japan... that it's not Skype being finnicky with people going around their limitations (like how they got angry with Fring and won't allow them to make Skype calls anymore).

    Since you are reading, you might be interested to know that Softbank has released their S!Mail app, and it is an SMS/MMS alternative (like Handcent SMS), with FULL EMOJI support! Check the link below and hopefully you can use it on Docomo as well (I don't know if they can limit apps to certain carriers or not). It also allows mail to be sent from @softbank or @vodafone addresses, but I have no idea how that would affect your phone. I didn't input any settings... When I input an e-mail address, it sends from my @k.vodafone.ne.jp address automatically (Softbank is doing something behind the scenes).

    http://androidforums.com/android-applications/196139-anyone-want-emoji-now-available-japan.html

    ReplyDelete
  5. I was 99.9999% sure that skype was to blame but the phone was.

    I'll check that out, but I am not so good with MMS because I never use it and don't well understand softbank MMS. I always thought MMS was an SMS with a pic attached, not email, but it seems that softbank refers to their email as MMS.

    AU Docomo and softbank all have a different implementation of emoji. So the actual characters are not compatible, which is why a while back they standardized the mappings for the shared emoji so that if I sent a smiley to someone on AU, it came out as a smiley instead of something like dog poo ;-)

    ReplyDelete
  6. Thanks for the test-out of skype and rundown. I was planning on trying it soon and your post got me to go ahead and try it out for myself. Results: Exactly the same. (Makes sense, running pretty much the same phone, rom and configurations.) Worked a little better than I thought it would...might be OK for a casual call with an understanding friend. It also noticeably works the battery: that was one of the hottest phone's I've ever made a call on!

    In other "doesn't work on ht-03a running an os it's not supposed to run" news:
    Fennec (Firefox - version for ARMv6 processors, download at http://bit.ly/aQ22MP) for android totally doesn't work as well. Crash!

    ReplyDelete
  7. Holy crap!

    "Installation requires approximately 32MB internal storage, plus 12MB SD storage."
    It's just a browser!!!!
    http://www.mozilla.com/en-US/mobile/platforms/

    I downloaded the apk you linked to and it is nearly 13 MB. For comparison, the native webkit browser is less than 350 kb.

    It took a while to load, during which time it installed a feedback extension and loaded fonts, but as soon as I tried to do something with it, it crashed, hard - most apps when the crash will result in a system message, but not this time.

    I have always preferred webkit browsers to gecko computers, so I'm not so sad.

    ReplyDelete
  8. oh yeah, installed, it is taking up a total of 49.9 MB of internal storage: 36.23 MB for the app and 12.66 MB for data. While I understand this is an experimental build for v6 processors, they have to bring that down by about an order of magnitude.

    ReplyDelete
  9. You'll note that Skype left out China and Japan, both countries have Chinese character set. Possibly has something to do with that.

    Also, a proxy for the unrooted for Skype performance is Fring. When I tried it on my unrooted magic the lag was terrible. On my desire, conversely, it runs fine. Sipdroid runs really well too, for those tech savvy enough to make use of it. All in all, I prefer Sipdroid because I can get the 1c a minute rates to the U.S., and its totally integrated into the phone (just add a + at the end of the number and it dials internationally). Call quality is beautiful, on the Desire and also the magic.

    ReplyDelete
  10. Do you know if Korean also uses 2-byte fonts like C and J? BTW, the skype app is full Japanese localized and handles sending chats in Japanese and has a Japanese interface if your phone environment is Japanese.

    Can sipdroid be used with skype? I looked into using for my US voip service, but my provider hasn't published sip details and know one (last I checked about a year ago) had figured it out.

    Can you post some links on setting up sipdroid with skype?

    ReplyDelete
  11. Haven't tried hooking it up with Skype (it definitely seems possible though) but I can confirm that Sipdroid works great. I have it connected to my SIP account with local (European) phone number. Rates are similar to Skype Out. On G3 the sound quality is very good with occasional sound bites missing and a slight lag depending on the how strong reception is. On Wifi the sound quality is excellent. The integration with Android is seamless and it doesn't seem to consume much battery.

    ReplyDelete
  12. You're lucky that your provider "provides" you with the details to make the most of the service you pay for. I am not :(

    ReplyDelete
  13. Added screen caps.

    ReplyDelete
  14. Hiya. Can you put that apk on a friendlier site? RapidShare doesn't appear to want to let me download it. Great work finding it, though!

    ReplyDelete
  15. Why not install MarketAccess to directly get it from the market? It spoofs the carrier code so you can see downloads not available in your country. I can email it to you perhaps. The apk as downloaded is only 9 MB, and I think gmail will let you send up to a 10 MB file.

    ReplyDelete
  16. I don't think you can use sipdroid with Skype. Sipdroid is just a SIP client. I use it with a free Sipgate SIP account and it lets anyone in the U.S. call me for free, and lets me call from the cell to anwhere in the states for like 2c a minute. I think Skype might be like 0.01 c a minute cheaper, but I don't do enough overseas calling to really care about a difference like that. I want the Skype client for the teleconferencing (assuming the cell version supports that) and the chat client. We use Skype in my office so it would be convenient to be online with Skype when I'm away from my desk.

    ReplyDelete
  17. Did you something special to be able to move it to sdcard?
    On my HTC desire the button remains grayed. so I can not put it on the sdcard...

    ReplyDelete
  18. I actually didn't move it to the SD card. So it seems that isn't allowed by the app? For rooted phones, there are scripts that will allow you to move apps to an ext partition, but if you're not rooted...

    try searching for firerat script as a start.

    ReplyDelete
  19. Tested Skype on HTC Hero, same result: calls quality is very bad whatever connection I used.
    Fring Skype calls were very good before they removed the option (on the same phone).

    ReplyDelete
  20. If I am not mistaken, MarketAccess requires a rooted device. As convenient as it would be to take advantage of MA's carrier spoofing, it hardly warrants rooting your device. I guess I will have to stick with finding the apk somewhere else.

    ReplyDelete
  21. Yeah, it does indeed require root, but now that universal androot is out, I think there is really no reason not to root because there is neither risk of bricking nor risk of voiding your warranty.

    You don't have to flash a new spl, radio, recovery, or ROM. Rerunning universal androot and unrooting will leave absolutely no trace that you ever rooted. The only thing that could give you away would be the presence of any root-requiring apks, but you could easily say you don't know what root is and you downloaded some app but it didn't work and you forgot to delete it. Might be a good idea to delete u androot before warranty service, though ;-)

    So you can install super user permissions, Set CPU to over/under clock to improve both performance and battery life, MA to get stuff not available in you area, and wireless tether for root.

    Previously, rooting would void your warranty and did carry a risk of bricking, but I just don't see that those are issues any more as long as you soft root.

    ReplyDelete
  22. The Desire isn't Androotable yet it seems. Good to know that someone is working on a softmod though.

    (Not sure how to reply to your post about Androot, as there is no "reply" button next to the "like" button so if this ends up in a strange place, I am excused)

    ReplyDelete
  23. OK, didn't realize that. So you have a valid excuse for not rooting ;-)

    ReplyDelete
  24. Installed by using apk on Desire HD and its performance is not that bad.
    Haven't tested over 3G because a bit scared after reading ur new post (Is the price of one skype call on Docomo's FOMA network 4200 yen?). Actually I'm using Softbank but don't trust them too.
    Should I test it or not?

    ReplyDelete
  25. Up to you, man. Isn't skype not a problem with softbank? because they allow it on the iphone over 3G, right? I was looking into recent stories of tethering with softbank and actually am not seeing people being caught lately.

    But it can be an expensive gamble if you lose.

    ReplyDelete
  26. Does it work for the softbank galapagos 003SH??

    ReplyDelete
  27. Yes, works on the 003SH but I used a different APK

    Didn't they release some special japanese version for the is03? I think the reason why they blocked it from the japanese android market is the same reason they removed tethering, network can't handle everyone using that much data. I'm starting to get frustrated with Softbank's reception recently (big surprise, huh?) as my 941SH never had reception problems at home but now I'm missing calls and getting mail deliver late...

    ReplyDelete