OLD | NEW |
(Empty) | |
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. |
| 4 |
| 5 """Manages intents and associated information. |
| 6 |
| 7 This is generally intended to be used with functions that calls Android's |
| 8 Am command. |
| 9 """ |
| 10 |
| 11 class Intent(object): |
| 12 |
| 13 def __init__(self, action='android.intent.action.VIEW', activity=None, |
| 14 category=None, component=None, data=None, extras=None, |
| 15 flags=None, package=None): |
| 16 """Creates an Intent. |
| 17 |
| 18 Args: |
| 19 action: A string containing the action. |
| 20 activity: A string that, with |package|, can be used to specify the |
| 21 component. |
| 22 category: A string or list containing any categories. |
| 23 component: A string that specifies the component to send the intent to. |
| 24 data: A string containing a data URI. |
| 25 extras: A dict containing extra parameters to be passed along with the |
| 26 intent. |
| 27 flags: A string containing flags to pass. |
| 28 package: A string that, with activity, can be used to specify the |
| 29 component. |
| 30 """ |
| 31 self._action = action |
| 32 self._activity = activity |
| 33 if isinstance(category, list) or category is None: |
| 34 self._category = category |
| 35 else: |
| 36 self._category = [category] |
| 37 self._component = component |
| 38 self._data = data |
| 39 self._extras = extras |
| 40 self._flags = flags |
| 41 self._package = package |
| 42 |
| 43 if self._component and '/' in component: |
| 44 self._package, self._activity = component.split('/', 1) |
| 45 elif self._package and self._activity: |
| 46 self._component = '%s/%s' % (package, activity) |
| 47 |
| 48 @property |
| 49 def action(self): |
| 50 return self._action |
| 51 |
| 52 @property |
| 53 def activity(self): |
| 54 return self._activity |
| 55 |
| 56 @property |
| 57 def category(self): |
| 58 return self._category |
| 59 |
| 60 @property |
| 61 def component(self): |
| 62 return self._component |
| 63 |
| 64 @property |
| 65 def data(self): |
| 66 return self._data |
| 67 |
| 68 @property |
| 69 def extras(self): |
| 70 return self._extras |
| 71 |
| 72 @property |
| 73 def flags(self): |
| 74 return self._flags |
| 75 |
| 76 @property |
| 77 def package(self): |
| 78 return self._package |
| 79 |
OLD | NEW |