Loading api/current.xml +69 −0 Original line number Diff line number Diff line Loading @@ -31714,6 +31714,29 @@ <parameter name="intent" type="android.content.Intent"> </parameter> </method> <method name="sendStickyOrderedBroadcast" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="intent" type="android.content.Intent"> </parameter> <parameter name="resultReceiver" type="android.content.BroadcastReceiver"> </parameter> <parameter name="scheduler" type="android.os.Handler"> </parameter> <parameter name="initialCode" type="int"> </parameter> <parameter name="initialData" type="java.lang.String"> </parameter> <parameter name="initialExtras" type="android.os.Bundle"> </parameter> </method> <method name="setTheme" return="void" abstract="true" Loading Loading @@ -33050,6 +33073,29 @@ <parameter name="intent" type="android.content.Intent"> </parameter> </method> <method name="sendStickyOrderedBroadcast" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="intent" type="android.content.Intent"> </parameter> <parameter name="resultReceiver" type="android.content.BroadcastReceiver"> </parameter> <parameter name="scheduler" type="android.os.Handler"> </parameter> <parameter name="initialCode" type="int"> </parameter> <parameter name="initialData" type="java.lang.String"> </parameter> <parameter name="initialExtras" type="android.os.Bundle"> </parameter> </method> <method name="setTheme" return="void" abstract="false" Loading Loading @@ -126706,6 +126752,29 @@ <parameter name="intent" type="android.content.Intent"> </parameter> </method> <method name="sendStickyOrderedBroadcast" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="intent" type="android.content.Intent"> </parameter> <parameter name="resultReceiver" type="android.content.BroadcastReceiver"> </parameter> <parameter name="scheduler" type="android.os.Handler"> </parameter> <parameter name="initialCode" type="int"> </parameter> <parameter name="initialData" type="java.lang.String"> </parameter> <parameter name="initialExtras" type="android.os.Bundle"> </parameter> </method> <method name="setTheme" return="void" abstract="false" core/java/android/app/ApplicationContext.java +32 −0 Original line number Diff line number Diff line Loading @@ -658,6 +658,38 @@ class ApplicationContext extends Context { } } @Override public void sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { IIntentReceiver rd = null; if (resultReceiver != null) { if (mPackageInfo != null) { if (scheduler == null) { scheduler = mMainThread.getHandler(); } rd = mPackageInfo.getReceiverDispatcher( resultReceiver, getOuterContext(), scheduler, mMainThread.getInstrumentation(), false); } else { if (scheduler == null) { scheduler = mMainThread.getHandler(); } rd = new ActivityThread.PackageInfo.ReceiverDispatcher( resultReceiver, getOuterContext(), scheduler, null, false).getIIntentReceiver(); } } String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { ActivityManagerNative.getDefault().broadcastIntent( mMainThread.getApplicationThread(), intent, resolvedType, rd, initialCode, initialData, initialExtras, null, true, true); } catch (RemoteException e) { } } @Override public void removeStickyBroadcast(Intent intent) { String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); Loading core/java/android/content/Context.java +49 −2 Original line number Diff line number Diff line Loading @@ -657,8 +657,7 @@ public abstract class Context { * supplying your own BroadcastReceiver when calling, which will be * treated as a final receiver at the end of the broadcast -- its * {@link BroadcastReceiver#onReceive} method will be called with * the result values collected from the other receivers. If you use * an <var>resultReceiver</var> with this method, then the broadcast will * the result values collected from the other receivers. The broadcast will * be serialized in the same way as calling * {@link #sendOrderedBroadcast(Intent, String)}. * Loading Loading @@ -689,6 +688,7 @@ public abstract class Context { * @see #sendBroadcast(Intent, String) * @see #sendOrderedBroadcast(Intent, String) * @see #sendStickyBroadcast(Intent) * @see #sendStickyOrderedBroadcast(Intent, BroadcastReceiver, Handler, int, String, Bundle) * @see android.content.BroadcastReceiver * @see #registerReceiver * @see android.app.Activity#RESULT_OK Loading @@ -715,9 +715,56 @@ public abstract class Context { * be re-broadcast to future receivers. * * @see #sendBroadcast(Intent) * @see #sendStickyOrderedBroadcast(Intent, BroadcastReceiver, Handler, int, String, Bundle) */ public abstract void sendStickyBroadcast(Intent intent); /** * Version of {@link #sendStickyBroadcast} that allows you to * receive data back from the broadcast. This is accomplished by * supplying your own BroadcastReceiver when calling, which will be * treated as a final receiver at the end of the broadcast -- its * {@link BroadcastReceiver#onReceive} method will be called with * the result values collected from the other receivers. The broadcast will * be serialized in the same way as calling * {@link #sendOrderedBroadcast(Intent, String)}. * * <p>Like {@link #sendBroadcast(Intent)}, this method is * asynchronous; it will return before * resultReceiver.onReceive() is called. Note that the sticky data * stored is only the data you initially supply to the broadcast, not * the result of any changes made by the receivers. * * <p>See {@link BroadcastReceiver} for more information on Intent broadcasts. * * @param intent The Intent to broadcast; all receivers matching this * Intent will receive the broadcast. * @param resultReceiver Your own BroadcastReceiver to treat as the final * receiver of the broadcast. * @param scheduler A custom Handler with which to schedule the * resultReceiver callback; if null it will be * scheduled in the Context's main thread. * @param initialCode An initial value for the result code. Often * Activity.RESULT_OK. * @param initialData An initial value for the result data. Often * null. * @param initialExtras An initial value for the result extras. Often * null. * * @see #sendBroadcast(Intent) * @see #sendBroadcast(Intent, String) * @see #sendOrderedBroadcast(Intent, String) * @see #sendStickyBroadcast(Intent) * @see android.content.BroadcastReceiver * @see #registerReceiver * @see android.app.Activity#RESULT_OK */ public abstract void sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras); /** * Remove the data previously sent with {@link #sendStickyBroadcast}, * so that it is as if the sticky broadcast had never happened. Loading core/java/android/content/ContextWrapper.java +10 −0 Original line number Diff line number Diff line Loading @@ -287,6 +287,16 @@ public class ContextWrapper extends Context { mBase.sendStickyBroadcast(intent); } @Override public void sendStickyOrderedBroadcast( Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { mBase.sendStickyOrderedBroadcast(intent, resultReceiver, scheduler, initialCode, initialData, initialExtras); } @Override public void removeStickyBroadcast(Intent intent) { mBase.removeStickyBroadcast(intent); Loading test-runner/android/test/mock/MockContext.java +7 −0 Original line number Diff line number Diff line Loading @@ -263,6 +263,13 @@ public class MockContext extends Context { throw new UnsupportedOperationException(); } @Override public void sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { throw new UnsupportedOperationException(); } @Override public void removeStickyBroadcast(Intent intent) { throw new UnsupportedOperationException(); Loading Loading
api/current.xml +69 −0 Original line number Diff line number Diff line Loading @@ -31714,6 +31714,29 @@ <parameter name="intent" type="android.content.Intent"> </parameter> </method> <method name="sendStickyOrderedBroadcast" return="void" abstract="true" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="intent" type="android.content.Intent"> </parameter> <parameter name="resultReceiver" type="android.content.BroadcastReceiver"> </parameter> <parameter name="scheduler" type="android.os.Handler"> </parameter> <parameter name="initialCode" type="int"> </parameter> <parameter name="initialData" type="java.lang.String"> </parameter> <parameter name="initialExtras" type="android.os.Bundle"> </parameter> </method> <method name="setTheme" return="void" abstract="true" Loading Loading @@ -33050,6 +33073,29 @@ <parameter name="intent" type="android.content.Intent"> </parameter> </method> <method name="sendStickyOrderedBroadcast" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="intent" type="android.content.Intent"> </parameter> <parameter name="resultReceiver" type="android.content.BroadcastReceiver"> </parameter> <parameter name="scheduler" type="android.os.Handler"> </parameter> <parameter name="initialCode" type="int"> </parameter> <parameter name="initialData" type="java.lang.String"> </parameter> <parameter name="initialExtras" type="android.os.Bundle"> </parameter> </method> <method name="setTheme" return="void" abstract="false" Loading Loading @@ -126706,6 +126752,29 @@ <parameter name="intent" type="android.content.Intent"> </parameter> </method> <method name="sendStickyOrderedBroadcast" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="intent" type="android.content.Intent"> </parameter> <parameter name="resultReceiver" type="android.content.BroadcastReceiver"> </parameter> <parameter name="scheduler" type="android.os.Handler"> </parameter> <parameter name="initialCode" type="int"> </parameter> <parameter name="initialData" type="java.lang.String"> </parameter> <parameter name="initialExtras" type="android.os.Bundle"> </parameter> </method> <method name="setTheme" return="void" abstract="false"
core/java/android/app/ApplicationContext.java +32 −0 Original line number Diff line number Diff line Loading @@ -658,6 +658,38 @@ class ApplicationContext extends Context { } } @Override public void sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { IIntentReceiver rd = null; if (resultReceiver != null) { if (mPackageInfo != null) { if (scheduler == null) { scheduler = mMainThread.getHandler(); } rd = mPackageInfo.getReceiverDispatcher( resultReceiver, getOuterContext(), scheduler, mMainThread.getInstrumentation(), false); } else { if (scheduler == null) { scheduler = mMainThread.getHandler(); } rd = new ActivityThread.PackageInfo.ReceiverDispatcher( resultReceiver, getOuterContext(), scheduler, null, false).getIIntentReceiver(); } } String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); try { ActivityManagerNative.getDefault().broadcastIntent( mMainThread.getApplicationThread(), intent, resolvedType, rd, initialCode, initialData, initialExtras, null, true, true); } catch (RemoteException e) { } } @Override public void removeStickyBroadcast(Intent intent) { String resolvedType = intent.resolveTypeIfNeeded(getContentResolver()); Loading
core/java/android/content/Context.java +49 −2 Original line number Diff line number Diff line Loading @@ -657,8 +657,7 @@ public abstract class Context { * supplying your own BroadcastReceiver when calling, which will be * treated as a final receiver at the end of the broadcast -- its * {@link BroadcastReceiver#onReceive} method will be called with * the result values collected from the other receivers. If you use * an <var>resultReceiver</var> with this method, then the broadcast will * the result values collected from the other receivers. The broadcast will * be serialized in the same way as calling * {@link #sendOrderedBroadcast(Intent, String)}. * Loading Loading @@ -689,6 +688,7 @@ public abstract class Context { * @see #sendBroadcast(Intent, String) * @see #sendOrderedBroadcast(Intent, String) * @see #sendStickyBroadcast(Intent) * @see #sendStickyOrderedBroadcast(Intent, BroadcastReceiver, Handler, int, String, Bundle) * @see android.content.BroadcastReceiver * @see #registerReceiver * @see android.app.Activity#RESULT_OK Loading @@ -715,9 +715,56 @@ public abstract class Context { * be re-broadcast to future receivers. * * @see #sendBroadcast(Intent) * @see #sendStickyOrderedBroadcast(Intent, BroadcastReceiver, Handler, int, String, Bundle) */ public abstract void sendStickyBroadcast(Intent intent); /** * Version of {@link #sendStickyBroadcast} that allows you to * receive data back from the broadcast. This is accomplished by * supplying your own BroadcastReceiver when calling, which will be * treated as a final receiver at the end of the broadcast -- its * {@link BroadcastReceiver#onReceive} method will be called with * the result values collected from the other receivers. The broadcast will * be serialized in the same way as calling * {@link #sendOrderedBroadcast(Intent, String)}. * * <p>Like {@link #sendBroadcast(Intent)}, this method is * asynchronous; it will return before * resultReceiver.onReceive() is called. Note that the sticky data * stored is only the data you initially supply to the broadcast, not * the result of any changes made by the receivers. * * <p>See {@link BroadcastReceiver} for more information on Intent broadcasts. * * @param intent The Intent to broadcast; all receivers matching this * Intent will receive the broadcast. * @param resultReceiver Your own BroadcastReceiver to treat as the final * receiver of the broadcast. * @param scheduler A custom Handler with which to schedule the * resultReceiver callback; if null it will be * scheduled in the Context's main thread. * @param initialCode An initial value for the result code. Often * Activity.RESULT_OK. * @param initialData An initial value for the result data. Often * null. * @param initialExtras An initial value for the result extras. Often * null. * * @see #sendBroadcast(Intent) * @see #sendBroadcast(Intent, String) * @see #sendOrderedBroadcast(Intent, String) * @see #sendStickyBroadcast(Intent) * @see android.content.BroadcastReceiver * @see #registerReceiver * @see android.app.Activity#RESULT_OK */ public abstract void sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras); /** * Remove the data previously sent with {@link #sendStickyBroadcast}, * so that it is as if the sticky broadcast had never happened. Loading
core/java/android/content/ContextWrapper.java +10 −0 Original line number Diff line number Diff line Loading @@ -287,6 +287,16 @@ public class ContextWrapper extends Context { mBase.sendStickyBroadcast(intent); } @Override public void sendStickyOrderedBroadcast( Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { mBase.sendStickyOrderedBroadcast(intent, resultReceiver, scheduler, initialCode, initialData, initialExtras); } @Override public void removeStickyBroadcast(Intent intent) { mBase.removeStickyBroadcast(intent); Loading
test-runner/android/test/mock/MockContext.java +7 −0 Original line number Diff line number Diff line Loading @@ -263,6 +263,13 @@ public class MockContext extends Context { throw new UnsupportedOperationException(); } @Override public void sendStickyOrderedBroadcast(Intent intent, BroadcastReceiver resultReceiver, Handler scheduler, int initialCode, String initialData, Bundle initialExtras) { throw new UnsupportedOperationException(); } @Override public void removeStickyBroadcast(Intent intent) { throw new UnsupportedOperationException(); Loading