application to call /system/bin/ts_calibrate

110 views
Skip to first unread message

Manoj Kumar

unread,
Sep 27, 2011, 3:35:04 AM9/27/11
to android-porting
Hey,

I am working on android 2.1 version for my SMDK6410 board.

I wanted to do touch calibration on my device so i used "android-
tslib" code available online and made the necessary changes.
I am able to create the "ts_calibrate" file in /system/bin and it is
working fine.

Now my requirement is to give user a option to run that ts_calibrate
directly from device. In short i want to make an apk file which calls
the ts_calibrate directly. (currently i am running it from adb shell)
I am not that familiar with java coding so can anyone please share
some code snippet (to make an apk) which shows how to run /system/bin/
ts_calibrate.

I tried something like this
http://stackoverflow.com/questions/5484535/runtime-exec-reboot-in-android
but it is not working, (may be because i don't have "/system/bin/su"
in my system)


thanks a lot
Peter

arif hussain

unread,
Sep 27, 2011, 11:27:51 PM9/27/11
to mano...@gmail.com, android-porting
1) un-rooted devices applications do not have permissions to run /system/bin binaries, so you need to root you device and change the access permission for /system/bin.

2) The proper-way is, create shared library of your native code, and call it from application using JNI. (Using NDK, refer ndk sample codes for the same)


-Arif


freakingtux

unread,
Sep 28, 2011, 4:33:44 PM9/28/11
to android...@googlegroups.com, mano...@gmail.com
Hi,


On Wednesday, September 28, 2011 5:27:51 AM UTC+2, arif wrote:
1) un-rooted devices applications do not have permissions to run /system/bin binaries, so you need to root you device and change the access permission for /system/bin.

2) The proper-way is, create shared library of your native code, and call it from application using JNI. (Using NDK, refer ndk sample codes for the same)

You still will have to declare using the android.permission.DIAGNOSTIC permission to get access to kernel input layer(via input group).
and this will not work on non rooted devices. I don't think there is an other way to access the raw events in 2.2

Perhaps putting a default pointerfile in the system and running a standard android app to get the magic points is the "easy" way of getting there. Keep in mind that restive touch screen support is not standard so hacked in by somebody else.

there are also patches( from nitdroid I believe) that actually don't use tslib while still providing pointercal file calibration.



Reply all
Reply to author
Forward
0 new messages