Corrupted SMS on Android

For a couple of weeks I have been receiving strangely composed SMS from a friend. It was as if two totally separate conversations were being mixed together into one long message.

At first I thought my friend might have been inebriated when he sent them (not unusual for him!) but as the messages continued to come through in this strange fashion I wondered if perhaps he was suffering from a split-personality.

Eventually I called him up and we compared messages. It turned out that the messages I was receiving on my Android device bore little resemblance to the messages he was sending. At first I thought this could be due to a corrupt SMS database on his iPhone, but after some searching I came across an Android bug report which perfectly described the issue I was experiencing:

» Issue 17769: Multipart SMS getting mixed up with old messages

The first post on this thread is dated June 2011, so the problem has been around for quite a while! I was pleased that I wasn’t alone in experiencing the issue, but what was the cause and how could I fix it?

Another Android bug report – Issue 28697 – had the answers:

Under certain circumstances, SMSDispatcher can incorrectly construct multi-part SMS messages, resulting in a corrupted message being dispatched to the applications. The corrupted message contains parts from previously received multi-part SMS messages instead of the corresponding parts from the newly received message.

In this more recent report, the author Ian Payton has identified the problem to be partly due to the way in which multi-part SMS is implemented, and partly to how Android processes multi-part messages.

If you want all the details then head on over to Ian’s detailed explanation, but the quick version is that an Android device can sometimes end up with orphaned SMS which it doesn’t know what to do with. These are usually the result of a message being retransmitted by the network because it did not receive a delivery acknowledgement from your device. This can occur if you are in patchy cellular coverage for example.

The SMS protocol uses an internal reference number to help reassemble a concatenated message, but this reference is not unique and if you have one or more of these orphaned messages on your device then in some circumstances the message parts can get mixed up to erroneously construct a new Frankenmessage!

This has the effect of your being presented with a message which is made up of some of the new message and some of an old message which has been hanging around in limbo on your device.

That’s all very well, but how can you fix this situation?

Ian has kindly written SMS Multi-Part Cleaner, a small Android application which finds all the orphaned SMS on your device and allows you to review and delete them manually. Alternatively you can download the very similar Orphaned Texts app from Google Play.

If you are prone to patchy cellular coverage and frequently receive long SMS then you be advised to run this application every few weeks to check for orphaned messages.

Advertisements

Printing to a Samsung ML-1210 on Mac OS X

Although Samsung stopped providing official Mac OS drivers for the ML-1210 laser printer long ago, it is still possible to use this venerable old laser printer with the latest Mac OS X.

First download the latest Open Source Samsung-GDI for Mac OS X and GPL Ghostscript for Mac OS X packages from The Linux Foundation.

Next you’ll need the Foomatic-RIP package, but don’t download the latest version!

You need to use Foomatic-RIP version 3.0.2 (dated 30th January 2008), otherwise your print-outs will include a top margin which you can’t remove. Fortunately the older working version is still available from OpenPrinting.org.

Open each downloaded disk image in turn and run the installers. When all three packages have been installed you are ready to add the printer.

Connect your printer using an appropriate USB cable. Now go to Mac OS X System Preferences and select ‘Print & Scan’. Click on the ‘+’ button and a new ‘Add Printer’ window will open.

Assuming your printer is connected you should see ‘Samsung ML-1210’ already in the printer window. Click on that printer name and then open the drop-down list of printer drivers next to “Print Using”. Select ‘Samsung ML-1210 Foomatic/GDI’ and then the ‘Add’ button.

Your printer has been added. Legacy printer revival achievement unlocked!

Gmail attachments not working?

I’m assuming you’ve found your way here because you too are having difficulty viewing image attachments in the Gmail app for Android?

I found that thumbnail previews of images were displaying fine, but when I tapped to view the full image the progress bar would scroll around indefinitely.

In my case the problem was caused by Android’s Download Manager, and the solution was relatively simple.

Go into your Android Settings screen, select Apps, swipe to the ALL tab and scroll down to Download Manager.

Tap on Download Manager and then Clear data.

Download Manager

Exit the settings, go back into Gmail and hopefully you should now find that attachments are working again.

The Mac App Store’s Dirty Little Secret

appstore_download

Apple’s Mac App Store is promoted as a simple solution for installing and managing third party apps on your Mac. On the face of it this would indeed appear to be true, but The Mac App Store is hiding a dirty little secret!

Apple makes some grand claims on their web site:

Thousands of apps. One simple way to get them.

With the Mac App Store built into OS X Lion, getting the apps you want has never been easier. No more boxes, no more discs, no more time-consuming installation. Click once to download and install any app on your Mac.

Keep your apps up to date.

Since developers are constantly improving their apps, the Mac App Store keeps track of your apps and tells you when an update is available. Update one app at a time or all of them at once, and you’ll always have the latest version of every app you own.

That sounds wonderful – but it’s a lie!

Some developers aren’t happy with providing free app updates to existing customers, so they publish updates as a discrete new app. This means that existing customers aren’t able to receive the update without purchasing the app all over again. Even worse the developer sometimes removes the legacy app from the App Store entirely, so it’s not available if you want to re-install it.

Buy, download and even re-download.

You can install apps on every Mac authorised for your personal use, and even download them again. This is especially convenient when you buy a new Mac and want to load it with apps you already own.

Again, not true!

If a developer decides to withdraw an application that you previously purchased from the App Store then it’s gone and there is no mechanism to download it again.

Not Available

I discovered this anomaly after I tried to install an app that I ‘owned’ onto a new Mac. After a bit of head scratching it was apparent that the developer had published a new version of the app just a few months after my purchase. Since I couldn’t re-download my purchased app I took it up with Apple Customer Support..

This is their email response:

I certainly understand how recent difficulties might have been frustrating for you. If I were in your situation, I would definitely feel the same way.

We do want that your experience with iTunes to be pleasant, however, I regret to inform you that your request has been denied. In accordance with the iTunes Store Terms of Sale that you agreed to when you created your iTunes Store account, all sales on the iTunes Store are final. This policy matches Apple’s refund policies and provides protection for copyrighted materials.

Please review the iTunes Store Terms of Sale for more information:
http://www.apple.com/legal/itunes/ww

As mentioned earlier, the iTunes Store is not responsible for the loss of purchases and encourages customers to back up their hard disks regularly. If an item needs to be replaced, you can restore your purchases from the backup and avoid the need to purchase replacement copies of titles from your collection.

Additionally, please make back up copies of your new purchases on a regular basis.

Apple’s recommendation then is that you keep a backup of your purchases! This contradicts The Mac App Store’s advertised capability of facilitating the re-download of apps you already own.

To conclude their email Apple went on to firmly slam the door in my face:

Again, I apologize for any inconvenience you have experienced. Any additional emails from you regarding this issue will not receive a response from iTunes Store Customer Support. Thank you for understanding.

That was not the response I was expecting from Apple’s renowned customer service.

What value are Apple adding to justify taking 30% of the sale price? Not much in my opinion. They aren’t future-proofing your purchases and in my experience their customer support isn’t great either. If you’re given the choice, my advice is to purchase apps direct from the developer instead.

Apps Publishing Security Policy

BSkyB has become the latest high-profile victim of a security blunder which has caused them to suspend all their Sky Android applications from the Google Play app store.

The hackers would appear to have used a combination of phishing and social engineering techniques to compromise a trusted computer and steal corporate login details for third-party sites such as Google and Twitter.

The storefront for Sky’s Android mobile apps was defaced, with the app descriptions changed and screenshots replaced.

Sky Go defaced

To make a bad situation even worse for Sky, one of their official Twitter accounts was also compromised and the hackers used it to draw more attention to their handywork.

skyhelpteam

Fuelled by the ‘official’ Twitter misinformation, customers were led to believe that the apps had also been tampered with, although this has been subsequently denied by Sky on their Help Forum:

We have temporarily removed our Apps from the Google Play store following a security alert.

All Sky Apps were unaffected and any Sky Android apps previously downloaded by customers are safe to use. There is no need to remove them from your android device.

As soon as we have restored the apps on Google Play we will post up an update.

In a related security breach, Twitter has locked access to @SkyHelpTeam, which is why we are currently unable to tweet from this account. However, help and info is available via @SkyHelpTeam1Facebook and here on the Sky Help Forum.

The tweet that was made from the @SkyHelpTeam twitter, in the early hours of Sunday morning, advising customers to unistall their apps was NOT an official tweet from Sky. Twitter security immediately detected this vogue messaging and locked account as part of agreed standard security process.

Sky have suffered this humiliation as a result of sloppy security practices. With a robust security policy the damage from this attack could have be limited or prevented entirely.

My recommendations for an apps publishing security policy:

  • Use a dedicated Google account for the Google Play Developer Console, not an account used for other Google services. Do not divulge the email address of this account.
  • Enable 2-Step Verification on your Google account and use Google Authenticator to login. Make sure that you properly sign out of your Google account when you have finished each session.
  • Only use a bookmarked https link to access the Developer Console. Never click on links contained in emails or on other web sites.
  • Tightly limit access to the Developer account. Only permit access to those directly involved with apps publishing, usually just the Apps Manager and their deputy.
  • Wherever possible use discrete private keys to sign each application – see the Signing Strategies section of Android Developer Tools. This limits the damage should the private key for an individual app be compromised.
  • Store your signing keys securely, preferably using a hardware-encrypted USB flash drive (such as an IronKey). Physically store the keys in a locked safe.
  • Use a standalone computer for code signing and never connect it to a network. Treat all networks as untrusted, even your corporate LAN.
  • Have a well rehearsed contingency plan to ensure business continuity if the worst does happen.

Dot BigBang

Dot BigBang

If you haven’t already heard about new generic Top-Level Domains (or gTLD) then you might be excused for thinking it’s of no interest to you.

Current top-level domain names (TLD) are restricted to the known extensions such as .com, .net and .org. Some additional extensions like .biz and .info were later introduced, but these have not gained widespread adoption for reasons I’ll go into a little later.

For the uninitiated, ICANN (Internet Corporation for Assigned Names and Numbers) is the authority responsible for managing global Internet domain names. They have been under pressure to expand (or in my view deregulate) the domain name registry market and as a result are accepting applications for what they call ‘new’ generic Top-Level Domains (gTLD).

A new gTLD can be pretty much anything. For example, you might want to start up your own Internet registry for farmers, offering domain names with the .farm extension. To achieve this you pay a hefty $185,000 evaluation fee to ICANN, submit your application and eventually you might end up as the official owner of the .farm registry. ICANN estimates that they may issue up to 1,000 of these new gTLD extensions in a year.

The general concept is that since the amount of meaningful names in the popular .com namespace is finite, introducing new gTLDs will expand the pool of available names. The theory being that someone like Apple Farm Co then has a chance of registering a name like apple.farm for their business.

In practice however all that happens is that the owner of the existing .com variant uses their trademark ownership rights to secure ‘their’ name via a sunrise registration period and so most of the names are taken before the registry even opens its doors for public registrations.

The introduction of .biz and .info is a perfect example of this. The .com owner doesn’t want or need a new gTLD variant of their name, but they are compelled to purchase it as a defensive registration. The end result is more spend for no commercial benefit and no appreciable increase in the available name space.

So how will these new gTLDs improve the situation? I’m stumped. Ever since ICANN announced the new gTLD program, I have been trying to think of a compelling use case for them.

Faced with the myriad of confusing and unfamiliar new gTLDs and concerned at the risks of online fraud, end-users will seek refuge in the provenance of .com. All this will do is reinforce the value of the traditional domain name extensions.

.com remains the undisputed domain heavyweight and I don’t see that situation changing any time soon. The only obvious winners in the gTLD game will be ICANN, registrars and consultants out to persuade you to register even more domain names you don’t need.

Embrace the bit-pipe!

Every mobile network operator I’ve ever worked with has been preoccupied with the corporate paranoia that they might one day become “just a bit-pipe”. It’s spoken about in hushed tones like it will be the end of the world if data is the main service they end up delivering to their customers.

To counter the bit-pipe fear, some operators have desperately attempted to expand beyond their core business. They seek to exploit their brands and diversify into other service industries.

O2 has been the greatest exponent of this strategy, as described in this Marketing Week article from March 2012:

o2changing46_460

O2 is to implement a new business approach designed to champion innovation and which includes a brand campaign that will convey its “Fresh thinking, new possibilities” mindset to consumers.

The new mantra, created by O2’s marketing department, will be underpinned by a refreshed brand strategy, which will move the focus of O2’s marketing away from handsets and tariffs to other areas of its business, such as money, ticketing and charity initiatives.

Sally Cowdry, O2’s marketing and consumer director, says the new way of thinking has been endorsed by the board, so every division must now ensure every business process has “Fresh thinking, new possibilities” at its core.

Presumably this new way of thinking hasn’t gone down all that well since Sally Cowdry has subsequently announced her departure from the O2 business.

With the current obsession for cloud-based services, social networking and on-demand entertainment, being a ‘bit-pipe’ has actually become very important indeed.

When Google invented the Chromebook, they recognised that most people need a laptop computer for web browsing – and that requires Internet connectivity. The same is also true of most smart phones. If you don’t have good network coverage, be it cellular data or WiFi, then there’s not much fun to be had with your shiny device.

So what has become the fuel for all our connected devices? Mobile data connectivity.

Consumers want a reliable mobile network, with bandwidth on tap and good coverage. Provide all of these for a reasonable price and consumers will stay with you. Yes voice and text revenues are on the decline, but those conventional cash-cow revenue streams are simply being substituted by data consumption.

While some mobile operators diverted investment away from their core network and bet the family silver on non-telecomms service strategies, 3 Mobile bravely took the opposite approach and heavily promoted their ‘big-boned’ Internet credentials. Not long after Orange & T-Mobile got together and re-invented themselves as the superfast connectivity provider EE.

This unashamed focus on data connectivity is unsurprisingly a hit with data hungry consumers, with recent commercial success going to those who embrace the bit-pipe philosophy!

Time will tell which strategy has proven most sustainable, but with the unpopular O2 Wallet service already due to be obsoleted by the Payments Council’s mobile payments, I know where my money is.