31st August 2010, 03:09 AM
Senior Member -
OP
Thanks Meter
543
Posts: 144
Join Date: Mar 2010
DONATE TO ME
[APP] FM Radio for the Droid 2!!
Instuctions to get FM Radio on Droid2
1. Droid2 must be rooted. Remount the /system to RW
2. Unzip the archive, and use abd push to put the files in the appropriate folders.
cd system
a. adb push app/FMRadio.apk /system/app
b. adb push app/FMRadioService.apk /system/app
c. adb push bin/fmradioserver /system/bin
d. adb push lib/libFMRadio.so /system/lib
e. adb push lib/libfmradio_jni.so /system/lib
f. adb push lib/libfmradioplayer.so /system/lib
3. Remount /system to ro
4. Plug in headphones.
5. Run FMradio
6 ???
7. Profit!
For me, I live in a crappy radio area, so I was only able to pick up 2 stations. YMMV.
As always I will not be responsible for any damage, pregnancies, or missing items from your home.
Thanks!
Slayher
The Following 3 Users Say Thank You to slayher For This Useful Post: [ Click to Expand ]
31st August 2010, 03:14 AM
Senior Member -
OP
Thanks Meter
543
Posts: 144
Join Date: Mar 2010
DONATE TO ME
Forgot the Link
Forgot the link..
LINKS! URL -> android.antbox.org/slayher/FMRadio_droid2.zip
The Following User Says Thank You to slayher For This Useful Post: [ Click to Expand ]
31st August 2010, 03:58 AM
Senior Member
Thanks Meter
69
Posts: 595
Join Date: Jul 2009
Location: DC
Where did these files come from?
31st August 2010, 04:20 AM
Senior Member -
OP
Thanks Meter
543
Posts: 144
Join Date: Mar 2010
DONATE TO ME
Quote:
Originally Posted by
karnovaran
Where did these files come from?
Some are already there, some from droidx
31st August 2010, 04:49 AM
Senior Member
Thanks Meter
69
Posts: 595
Join Date: Jul 2009
Location: DC
I've tried to run it multiple times and rebooted, but it just says "FM Radio is being launched, please wait..."
31st August 2010, 05:02 AM
Senior Member -
OP
Thanks Meter
543
Posts: 144
Join Date: Mar 2010
DONATE TO ME
Quote:
Originally Posted by
karnovaran
I've tried to run it multiple times and rebooted, but it just says "FM Radio is being launched, please wait..."
get a logcat
It sounds like either a permission issue, or one of the files didnt get pushed
31st August 2010, 05:08 AM
Senior Member
Thanks Meter
69
Posts: 595
Join Date: Jul 2009
Location: DC
Quote:
Originally Posted by
slayher
get a logcat
It sounds like either a permission issue, or one of the files didnt get pushed
Code:
roid.intent.action.HEADSET_PLUG
08-31 00:07:08.619 2097 2097 D JAVA:FMRadioPlayerService: HEADSET is pluged in
/out.
08-31 00:07:08.627 2097 2097 V JAVA:FMRadioPlayerService: handleMessage headse
t plug begin
08-31 00:07:08.627 2097 2097 V JAVA:FMRadioPlayerService: mHeadset = 1
08-31 00:07:08.627 2097 2097 V JAVA:FMRadioPlayerService: mIsHeadsetPlugged =
true
08-31 00:07:08.635 2097 2097 W JAVA:FMRadioPlayerService: Headset is pluged in
!
08-31 00:07:08.658 2090 2090 D FMRadioMain: Leave getDataFromDB()
08-31 00:07:08.666 2090 2090 D FMRadioMain: leave updateListView()
08-31 00:07:08.666 2090 2090 D FMRadioMain: onStart() called
08-31 00:07:08.666 2090 2090 W FMRadioMain: onServiceConnected::fmradio java s
ervice started
08-31 00:07:08.674 2097 2101 W JAVA:FMRadioPlayerService: IFMRadioPlayerServic
e.Stub : isPowerOn
08-31 00:07:08.674 2097 2101 D JAVA:FMRadioPlayerService: FMStateUNInit:isPowe
rOn(), return misPowerOn value to UI
08-31 00:07:08.791 2090 2090 W FMRadioMain: servie is ready popup a wait dialo
g
08-31 00:07:08.791 2090 2090 D FMDataProvider: set channel table: FM_Radio
08-31 00:07:08.807 2097 2097 D JAVA:FMRadioPlayerService: Received intent: com
.motorola.fmradio.bindservice.succeed
08-31 00:07:08.807 2097 2097 D JAVA:FMRadioPlayerService: bind service succeed
08-31 00:07:08.807 2097 2097 W JAVA:FMRadioPlayerService: Notice home to show
update current preset name on the notice bar.
08-31 00:07:08.830 2934 2934 E FMRadioService: onCreate() called***
08-31 00:07:08.853 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =0
08-31 00:07:08.861 2934 2934 V FMRadioService: onBind***
08-31 00:07:08.861 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.869 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =1
08-31 00:07:08.877 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.877 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =2
08-31 00:07:08.877 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.885 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =3
08-31 00:07:08.885 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.892 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =4
08-31 00:07:08.892 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.892 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =5
08-31 00:07:08.892 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.892 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =6
08-31 00:07:08.892 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.900 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =7
08-31 00:07:08.900 2934 2934 I FMRadio_Logs: Enter JNI_OnLoad.....
08-31 00:07:08.900 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.900 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =8
08-31 00:07:08.900 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.908 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =9
08-31 00:07:08.908 2934 2934 D FMRadioPlayer: Looper = Looper.myLooper()!
08-31 00:07:08.916 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.916 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =10
08-31 00:07:08.924 2934 2934 I FMRadio_Logs: IN JNI fmradio_native_setup
08-31 00:07:08.924 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:08.924 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.924 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =11
08-31 00:07:08.924 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.924 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =0
08-31 00:07:08.932 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.932 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =1
08-31 00:07:08.932 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.939 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =2
08-31 00:07:08.939 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.939 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =3
08-31 00:07:08.939 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.939 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =4
08-31 00:07:08.947 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.947 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =5
08-31 00:07:08.955 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.955 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =6
08-31 00:07:08.955 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.978 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =0
08-31 00:07:08.978 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.978 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =1
08-31 00:07:08.978 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:08.986 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =2
08-31 00:07:09.002 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.002 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =3
08-31 00:07:09.018 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.018 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =4
08-31 00:07:09.033 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.033 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =5
08-31 00:07:09.041 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.064 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =0
08-31 00:07:09.072 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =1
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =2
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =3
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =4
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =5
08-31 00:07:09.080 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.088 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =6
08-31 00:07:09.088 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.088 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =7
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =8
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =9
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =10
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =11
08-31 00:07:09.096 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.103 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =0
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =1
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =2
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =3
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.111 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =4
08-31 00:07:09.119 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.119 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =5
08-31 00:07:09.119 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.127 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter, getVie
w(), position =6
08-31 00:07:09.127 2090 2090 D FMRadioMain: FMRadio ChannelListAdapter getview
, set gone
08-31 00:07:09.189 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:09.221 1243 1265 I ActivityManager: Displayed activity com.motorol
a.fmradio/.FMRadioMain: 816 ms (total 12066 ms)
08-31 00:07:09.924 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:10.088 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.119 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.135 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.150 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.166 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.182 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.197 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.213 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.229 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.244 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.260 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.275 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.291 2090 2090 D FMRadioMain ChannelListView: call onDraw
08-31 00:07:10.924 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:11.925 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:12.931 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:13.932 2934 2934 W FMRadio_Logs: FMRadioStackService not published
, waiting...
08-31 00:07:14.433 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:15.434 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:16.018 1602 1602 D dalvikvm: GC_EXPLICIT freed 897 objects / 53672
bytes in 77ms
08-31 00:07:16.432 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:17.435 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:18.436 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:19.435 2934 2934 W FMRadio_Logs: FMRadioStackService not published
, waiting...
08-31 00:07:19.939 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:20.939 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:21.197 1888 1888 D dalvikvm: GC_EXPLICIT freed 3330 objects / 1989
76 bytes in 111ms
08-31 00:07:21.943 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:22.941 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:23.940 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:24.946 2934 2934 W FMRadio_Logs: FMRadioStackService not published
, waiting...
08-31 00:07:25.440 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:26.252 1365 1365 D dalvikvm: GC_EXPLICIT freed 287 objects / 13912
bytes in 73ms
08-31 00:07:26.448 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:27.449 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:28.450 2934 2934 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:28.786 1243 1255 W ActivityManager: Timeout executing service: Ser
viceRecord{45ce3bc0 com.motorola.android.fmradio/.FMRadioService}
08-31 00:07:28.791 1243 1255 I Process : Sending signal. PID: 2934 SIG: 9
08-31 00:07:28.799 1243 1382 I ActivityManager: Process com.motorola.android.f
mradio (pid 2934) has died.
08-31 00:07:28.799 1243 1382 W ActivityManager: Scheduling restart of crashed
service com.motorola.android.fmradio/.FMRadioService in 5000ms
08-31 00:07:31.275 1402 1402 D dalvikvm: GC_EXPLICIT freed 820 objects / 89352
bytes in 94ms
08-31 00:07:33.807 1243 1255 I ActivityManager: Start proc com.motorola.androi
d.fmradio for service com.motorola.android.fmradio/.FMRadioService: pid=2945 uid
=1000 gids={3003, 3002, 3001, 1015, 2001}
08-31 00:07:33.900 2945 2945 E FMRadioService: onCreate() called***
08-31 00:07:33.900 2945 2945 V FMRadioService: onBind***
08-31 00:07:33.908 2945 2945 I FMRadio_Logs: Enter JNI_OnLoad.....
08-31 00:07:33.908 2945 2945 D FMRadioPlayer: Looper = Looper.myLooper()!
08-31 00:07:33.908 2945 2945 I FMRadio_Logs: IN JNI fmradio_native_setup
08-31 00:07:33.908 2945 2945 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:34.908 2945 2945 I ServiceManager: Waiting for sevice fmradio.stac
k...
08-31 00:07:35.913 2945 2945 I ServiceManager: Waiting for sevice fmradio.stac
k...
^C
C:\android-sdk-windows\android-sdk-windows\tools>
31st August 2010, 05:26 AM
Senior Member -
OP
Thanks Meter
543
Posts: 144
Join Date: Mar 2010
DONATE TO ME
Either the permissions are wrong, or you didnt copy the fmradioserver to /system/bin
31st August 2010, 05:35 AM
Senior Member
Thanks Meter
69
Posts: 595
Join Date: Jul 2009
Location: DC
I copied everything just fine. Do you have a suggestion regarding the permissions?
31st August 2010, 05:54 AM
(Last edited by facelessuser; 31st August 2010 at 04:05 PM .)
Reason: typos
Senior Member
Thanks Meter
1
Posts: 410
Join Date: Jan 2009
Someone should add to the instructions to make the permissions of the files that go into system/lib 644, and the file that goes into system/bin should be 755.
I just used the other lib files and binary files in the related folders as examples. People who are new to linux environments don't know much about permissions, so its always good to post for the new guys to understand as well.
Most Thanked In This Thread
1 (quote) Great summary,
thanks ! :) Yes, … 1 (quote)
It is, but look
at his … 1 After a full year without
a Droid * and … 1 To help clear up and
consolidate … 1 Here's another way w/out SDK, and full instructions