New: XDA launches forum for app developers. Discuss coding, tools, marketing, and more.
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
perudrew
Old
#1  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
Default [Q] CM9 0.0.7.3 & Apps that work only with stock ROM

Thanks to Koshu and all contributors for the CM9 port. It is amazing. I am finally using the tablet on a daily basis.

One app that I would like to work with the CM9 port is MyScript Stylus Mobile.

I have restored the app using Titanium Backup from one of my nandroid backups. The app restored without a problem. But everytime I try to run it (use it as an input method), I get the following error message:
Compatibility error. This version of MyScript Stylus if not compatible with this device.

So my question: Is there something that I can change in CM9 that would trick the app in to thinking that this is the stock Lenovo ROM? For example, could it be as simple as changing the device id in build.prop?

I can provide a logcat if that would help someone figure out what exactly the app is trying to verify.

Thanks.
 
perudrew
Old
#2  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
I pulled the build.prop off my nandroid backup and compared it to the current build.prop. Based on that comparison here are the list of items that are different:

ro.build.id
ro.build.display.id
ro.build.version.incremental
ro.build.version.sdk
ro.build.version.release
ro.build.date
ro.build.date.utc
ro.build.type
ro.build.user
ro.build.host
ro.build.tags
ro.product.model
ro.product.brand
ro.product.name
ro.product.device
ro.product.manufacturer
ro.build.product
ro.build.description
ro.build.fingerprint

**And this was not in the original build.prop
ro.cm.device=thinkpadtablet


Can someone help me identify what I can change without having any negative side effects?

For example, which ones are merely identifiers that have no deeper connection to the OS.

Of course, I am assuming that the MyScript Stylus app is just looking for some simple information (such as ro.product.manufacturer) as verification. So, if I change it back to the original the app will work.

Thanks.
 
darkhandsome18
Old
#3  
Senior Member
Thanks Meter 45
Posts: 153
Join Date: Nov 2011
Modifying the build.prop as far as I know is safe. In my case I've completely swapped out the whole build.prop when trying to get an incompatible game to work. I simply replaced the build.prop with that of a galaxy tab 10.1. I have also done this before on my galaxy s2. Its called spoofing the build.prop lol.
Anyway the bottom line is that its completely safe to modify your build.prop as it has no boot functions, so it won't brick your device. Just backup ur current build.prop and then replace it with the one from the original thinkpad stock rom.


The only issue you may have is if you have apps that depend on recognizing your current build.prop but since you're on a cm9 port I doubt that. So its safe. But backup as you may need to replace the build.prop when flashing a rom or update.
The build.prop is somewhere in the system folder (can't remember exact path but will check for u)

Overall, doing anything to your build.prop is safe and reversible but if you still want to just edit lines in it, it's still safe but I don't know what lines to edit to make that app work.
 
perudrew
Old
(Last edited by perudrew; 8th June 2012 at 02:05 PM.) Reason: grammar/wording
#4  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
Thanks for the reply.

Unfortunately, it didn't work out. I replaced all the values for the items in build.prop that I mentioned above using the info from the original Lenovo build.prop. However, the tablet got stuck in a bootloop after rebooting. The Lenovo logo comes up, but the image that comes immediately after that just keeps cycling.

I also wasn't able to push the backup build.prop file through adb due to permission issues. This was unexpected as the tablet is rooted (obviously).

So I just restored a previous backup using CWM.

Due to what happened, it seems like the boot sequence does verify something from the build.prop file. It seems like I am stuck until I figure out (with someone's help) what exactly the app is trying to verify - hopefully it isn't something that is also verified during boot.

Thanks, again, for the help.

Any other suggestions?
 
darkhandsome18
Old
#5  
Senior Member
Thanks Meter 45
Posts: 153
Join Date: Nov 2011
Like I said, swap out the build.prop file. Its possible that while editing the values, you made a mistake. Just copy the stock build.prop and use to root file explorer to replace it. If you are good with adb/terminal then that's a better option as you can use root terminal to replace the file. I'm surprised that you have issues when editing your build.prop because I'm on the cm9 port but using my galaxy tab's build.prop without any issues
 
Koshu
Old
#6  
Koshu's Avatar
Senior Member
Thanks Meter 427
Posts: 346
Join Date: Jul 2007

 
DONATE TO ME
Did you try installing it from the market? In the past i had sometimes problems with restoring titanium backups to new roms, but thats app dependent. And could you find anything usefull in the logcat?
 
perudrew
Old
#7  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
Quote:
Originally Posted by darkhandsome18 View Post
Like I said, swap out the build.prop file. Its possible that while editing the values, you made a mistake. Just copy the stock build.prop and use to root file explorer to replace it. If you are good with adb/terminal then that's a better option as you can use root terminal to replace the file. I'm surprised that you have issues when editing your build.prop because I'm on the cm9 port but using my galaxy tab's build.prop without any issues

Unfortunately swapping the file didn't work either. I got stuck in the same boot loop.

If you don't mind could you send me a link to the Galaxy Tab build.prop that you are using. That may help me identify what I can and can't change. Thanks.
 
perudrew
Old
#8  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
Quote:
Originally Posted by Koshu View Post
Did you try installing it from the market? In the past i had sometimes problems with restoring titanium backups to new roms, but thats app dependent. And could you find anything usefull in the logcat?
Koshu thanks for the input. I hadn't considered installing it from the market.

The app is only available on the Lenovo App Store - so I installed that and then installed the MyScript Stylus app through the App Store. Unfortunately, that didn't make any difference. I am still getting the exact compatibility error when I try to run the app.

I haven't seen anything obvious in the logcat that would point towards the verification that the app is doing. However, I don't really know what to look for. I will upload the logcat.
 
perudrew
Old
#9  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
Here's the logcat.

What I did while generating the logcat: I opened Dolphin Browser and switched the input method to MyScript Stylus. When the compatibility error came up I just clicked on "Close" four or five times, and then I clicked on "Change IM" and picked the Android keyboard.
Attached Files
File Type: txt logcat1.txt - [Click for QR Code] (237.9 KB, 13 views)
 
perudrew
Old
#10  
Junior Member - OP
Thanks Meter 0
Posts: 7
Join Date: May 2012
Default SOLVED

It turns out that all that was required was to change the following lines in the build.prop file

ro.product.model=ThinkPad Tablet
ro.product.brand=Lenovo

I decided to try changing only those lines after watching this:
youtube.com/watch?v=cssyIE4maZY

MyScript Stylus is now working perfectly.

Also -in case anyone is interested- after making this change to the build.prop, the MyScript Notes Mobile app is also working (had the same compatibility issues).


Thanks to darkhandsome18 and Koshu for the replies.


XDA PORTAL POSTS

Pearl Chen to Talk NFC Development at XDA:DevCon 2013

From HTML to LEDs or Android to Arduino, Hardware Hacking is a pastime of many people … more

Avoid Framework Bootloops on Xperias Running Jelly Bean

If you’re a Sony device owner running a stock Android Jelly Bean firmware and … more

Forum Added for the Samsung Galaxy Mega

What do you do when the Galaxy Note line is simply not big enough? You get theSamsung Galaxy Mega. … more

Voice Control Your Phone with Tasker and AutoVoice – XDA Developer TV

XDA Developer TV Producer Kevin set up his phone to respond to … more