Got it to work. For reference to anyone else, in addition to signing
with the platform key, the ACTION_REBOOT intent has to have a few
extras defined. Without any extras, it looks like the Watchdog thread
will basically ignore it.
This code would do an immediate reboot:
Intent i = new Intent(Intent.ACTION_REBOOT);
i.putExtra("nowait", 1);
i.putExtra("interval", 1);
i.putExtra("window", 0);
sendBroadcast(i);
Details in frameworks/base/services/java/com/android/server/
Watchdog.java in the Android source.
Note that this is not in the API docs so probably subject to change :)
mark
On Aug 6, 2:24 pm, markwhitney <[email protected]> wrote:
> Great, thanks for the link, I will look into this further there.
>
> On Aug 6, 1:54 pm, Roman <[email protected]> wrote:
>
> > There is already a post about this on the forum. Look at
>
> >http://groups.google.com/group/android-platform/browse_thread/thread/...
>
> > In general you don't want to allow third party apps to do arebooton
> > your phone this easily. It is very dangerous that's why theREBOOTis
> > only allowed for system apps.
>
> > --
> > Roman Baumgaertner
> > Sr. SW Engineer-OSDC
> > ·T· · ·Mobile· stick together
> > The views, opinions and statements in this email are those of the
> > author solely in their individual capacity, and do not necessarily
> > represent those of T-Mobile USA, Inc.
>
> > On Aug 6, 8:54 am, markwhitney <[email protected]> wrote:
>
> > > I am trying torebootAndroid by broadcasting Intent.ACTION_REBOOT
> > > from my activity.
>
> > > I believe that I have given it all the proper permissions to send such
> > > a signal but when I launch the activity, nothing happens. I saw a
> > > similar post about this back in May, but no responses.
>
> > > Logcat:
>
> > > ActivityManager I Starting activity: Intent
> > > { action=android.intent.action.MAIN categories=
> > > {android.intent.category.LAUNCHER} flags=0x102000
> > > 00 comp=
> > > {com.android.settings.shutitdown/
> > > com.android.settings.shutitdown.ShutdownActivity} }
> > > ActivityManager I Start proc com.android.settings.shutitdown for
> > > activity com.android.settings.shutitdown/.ShutdownActivity: pid=1397
> > > uid=10
> > > 00 gids={}
> > > ShutdownActivity D creating activity: forreboot
> > > ShutdownActivity I rebooted
> > > InputConnectionWrapper W showStatusIcon on inactive InputConnection
> > > ActivityManager I Displayed activity
> > > com.android.settings.shutitdown/.ShutdownActivity: 564 ms
>
> > > Note that there is no denial to send the Intent, just silence. Here
> > > is the activity code:
>
> > > public class ShutdownActivity extends Activity {
> > > private static final String LOG_TAG = "ShutdownActivity";
>
> > > public void onCreate(Bundle b) {
> > > super.onCreate(b);
> > > setContentView(R.layout.shutdown_main);
> > > Log.d(LOG_TAG, "creating activity: forreboot");
> > > Intent i = new Intent(Intent.ACTION_REBOOT);
> > > i.setAction(Intent.ACTION_REBOOT);
> > > sendBroadcast(i);
> > > Log.i(LOG_TAG, "rebooted");
> > > }
> > > public void onPause() {
> > > }
>
> > > }
>
> > > ...and the manifest:
>
> > > <manifest xmlns:android="http://schemas.android.com/apk/res/android"
> > > package="com.android.settings.shutitdown"
> > > android:sharedUserId="android.uid.system">
>
> > > <uses-permission android:name="android.permission.REBOOT" />
>
> > > <application android:label="shutitdown"
> > > android:icon="@drawable/ic_launcher_settings">
> > > <activity android:name=".ShutdownActivity"
> > > android:label="Shutdown">
> > > <intent-filter>
> > > <action android:name="android.intent.action.MAIN" />
> > > <category android:name="android.intent.category.LAUNCHER" /
>
> > > </intent-filter>
> > > </activity>
> > > </application>
>
> > > </manifest>
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---