public class AndroidStartComponentTool extends Object
Constructor and Description |
---|
AndroidStartComponentTool(IClassHierarchy cha,
MethodReference asMethod,
Set<IntentStarters.StarterFlags> flags,
TypeReference caller,
TypeSafeInstructionFactory instructionFactory,
ParameterAccessor acc,
SSAValueManager pm,
VolatileMethodSummary redirect,
ParameterAccessor.Parameter self,
IntentStarters.StartInfo info,
CGNode callerNd) |
Modifier and Type | Method and Description |
---|---|
SSAValue |
addPhi(List<? extends SSAValue> from)
Add Phi (if necessary) - not if only one from.
|
void |
assignIBinder(SSAValue iBinder,
List<? extends SSAValue> allActivities)
Set the iBinder in the callee.
|
void |
attachActivities(Set<? extends SSAValue> activities,
SSAValue application,
SSAValue thread,
SSAValue context,
SSAValue iBinderToken,
SSAValue intent) |
SSAValue |
fetchCallerContext()
Fetches the context of the caller.
|
SSAValue |
fetchIBinder(SSAValue androidContext)
Fetch the permissions to start the component with.
|
void |
fetchResults(List<? super SSAValue> resultCodes,
List<? super SSAValue> resultData,
List<? extends SSAValue> allActivities)
Grab mResultCode and mResultData.
|
void |
setIntent(SSAValue intent,
List<? extends SSAValue> allActivities)
Call Activity.setIntent.
|
AndroidTypes.AndroidContextType |
typeOfCallerContext() |
public AndroidStartComponentTool(IClassHierarchy cha, MethodReference asMethod, Set<IntentStarters.StarterFlags> flags, TypeReference caller, TypeSafeInstructionFactory instructionFactory, ParameterAccessor acc, SSAValueManager pm, VolatileMethodSummary redirect, ParameterAccessor.Parameter self, IntentStarters.StartInfo info, CGNode callerNd)
public void attachActivities(Set<? extends SSAValue> activities, SSAValue application, SSAValue thread, SSAValue context, SSAValue iBinderToken, SSAValue intent)
public AndroidTypes.AndroidContextType typeOfCallerContext()
public SSAValue fetchCallerContext()
public SSAValue fetchIBinder(SSAValue androidContext)
UnsupportedOperationException
- when fetching is not supported with the current settingspublic void assignIBinder(SSAValue iBinder, List<? extends SSAValue> allActivities)
public void setIntent(SSAValue intent, List<? extends SSAValue> allActivities)
public void fetchResults(List<? super SSAValue> resultCodes, List<? super SSAValue> resultData, List<? extends SSAValue> allActivities)