Saturday, September 5, 2009

Broken Permissions Due To Rooting Your Phone

Hi,

instead of visiting this web page you would usually see a mail like the following popping up on your phone:

Sorry!

NewsRob hit a wall. Please send this mail, so that the developer can analyze/fix the issue.
If it is not too much to ask, please add to this mail what you just did:

-- Time: Fri Sep 04 18:35:37 GMT+01:00 2009
-- Android Version: sdk=3, release=1.5, inc=150275
-- Memory free: 0,51MB total: 3,07MB max: 16,00MB
-- NewsRob Version: 2.8.0/280
-- Stacktrace:(1516)
java.lang.RuntimeException: Unable to start receiver com.newsrob.WakeupAndSynchronizeReceiver: java.lang.SecurityException: Neither user 10085 nor current process has android.permission.WAKE_LOCK.
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2429)
at android.app.ActivityThread.access$2700(ActivityThread.java:112)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1753)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:3960)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:782)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.SecurityException: Neither user 10085 nor current process has android.permission.WAKE_LOCK.
at android.os.Parcel.readException(Parcel.java:1234)
at android.os.Parcel.readException(Parcel.java:1222)
at android.os.IPowerManager$Stub$Proxy.acquireWakeLock(IPowerManager.java:178)
at android.os.PowerManager$WakeLock.acquire(PowerManager.java:228)
at com.newsrob.SynchronizationService.acquireWakeLock(SynchronizationService.java:452)
at com.newsrob.WakeupAndSynchronizeReceiver.onReceive(WakeupAndSynchronizeReceiver.java:23)
at android.app.ActivityThread.handleReceiver(ActivityThread.java:2420)
... 10 more

But as this now happens more than 30 times a week I have trouble keeping up with answering those "bug reports" in a timely fashion. Hence I created this explanation and you are now directed from within NewsRob to this page.

So here it goes. You have rooted your phone, probably moved your apps to the SD card. In the process the permissions that you initially granted to your apps have been broken.

You can now either wipe the phone, re-install the apps or run some magic script from your ROM provider to correct the permissions issue.


If you have further insights, share them in the comments.


Matt Zimmerman added:

"I had this problem, and fix_permissions did not fix it. The trouble was not with UNIX filesystem permissions (which is what fix_permissions tries to fix), but with Android security permissions.

I fixed it by re-installing the affected applications, including NewsRob: http://mdzlog.alcor.net/2010/01/31/fix-broken-android-permissions-by-re-installing-apps/"

Chris Haworth added:

"Current cyanogen rom, just go to terminal
emulator and hit enter then type fix_permissions and let that finish.
Then keep typing exit and enter til it exits you out."

I hope that helps!

Update: Please keep the comments on this particular article on topic. I will remove other comments as this page will stay the landing page for this single issue for some time and discussions of other NewsRob issues wouldn't be all that helpful.

You can go off-topic on any other article ;-)

7 comments:

  1. Cyanogen 4.0.4, NewsRob 2.9.0, running the fix_permissions script (as root) didn't help :(

    NewsRob activity simply quits back to home screen a while after the sync was (manually) started.

    ReplyDelete
  2. That's very stange. Can you provide me with a log?
    If you don't use the adb tool, you could use the log collector app from the market. You would then need to run it, after NewsRob returns to the home screen.

    ReplyDelete
  3. Hi Mariano,

    see the log here: http://x0.cz/8dv

    It seems is wasn't the same error as above, I can see a SIGSEGV in the log. So maybe something related to Cyanogen mod I'm using. Even more as the next sync went ok. I'll keep an eye on the logs and will let either you or Cyanogen know, depending what shows up.

    ReplyDelete
  4. Thanks Tomas,

    indeed, I can't see any fault with NewsRob in the log so far.

    I would be interested in further updates though.

    Cheers,
    Mariano

    ReplyDelete
  5. Sure, I'll let you know if anything pops up.

    ReplyDelete
  6. I had this problem, and fix_permissions did not fix it. The trouble was not with UNIX filesystem permissions (which is what fix_permissions tries to fix), but with Android security permissions.

    I fixed it by re-installing the affected applications, including NewsRob: http://mdzlog.alcor.net/2010/01/31/fix-broken-android-permissions-by-re-installing-apps/

    ReplyDelete
  7. This comment has been removed by a blog administrator.

    ReplyDelete