@@ -184,13 +184,15 @@ screen:
184
184
(Source of the Compass Windrose: `Wikipedia <http://en.wikipedia.org/wiki/Compass_rose>`__)
185
185
186
186
187
- API
188
- ---
187
+ Android API
188
+ -----------
189
189
190
- android
191
- ~~~~~~~
190
+ Hardware
191
+ ~~~~~~~~
192
192
193
- .. module :: android
193
+ This module is built for accessing hardware devices of an Android device
194
+
195
+ .. module :: Hardware
194
196
195
197
196
198
.. function :: vibrate(s)
@@ -264,6 +266,122 @@ used to enable/disable the sensor and to read the sensor
264
266
265
267
(SSID, BSSID, SignalLevel)
266
268
269
+ Action
270
+ ~~~~~~
271
+
272
+ This module is built to deliver data to someone else.
273
+
274
+ .. module :: Action
275
+
276
+ .. function :: send(mimetype, filename, subject, text, chooser_title)
277
+
278
+ Deliver data to someone else. This method is a wrapper around `ACTION_SEND
279
+ <http://developer.android.com/reference/android/content/Intent.html#ACTION_SEND> `_
280
+
281
+ :Parameters:
282
+ `mimetype `: str
283
+ Must be a valid mimetype, that represent the content to sent.
284
+ `filename `: str, default to None
285
+ (optional) Name of the file to attach. Must be a absolute path.
286
+ `subject `: str, default to None
287
+ (optional) Default subject
288
+ `text `: str, default to None
289
+ (optional) Content to send.
290
+ `chooser_title `: str, default to None
291
+ (optional) Title of the android chooser window, default to 'Send email...'
292
+
293
+ Sending a simple hello world text::
294
+
295
+ android.action_send('text/plain', text='Hello world',
296
+ subject='Test from python')
297
+
298
+ Sharing an image file::
299
+
300
+ # let's say you've make an image in /sdcard/image.png
301
+ android.action_send('image/png', filename='/sdcard/image.png')
302
+
303
+ Sharing an image with a default text too::
304
+
305
+ android.action_send('image/png', filename='/sdcard/image.png',
306
+ text='Hi,\n\tThis is my awesome image, what do you think about it ?')
307
+
308
+ Further Modules
309
+ ~~~~~~~~~~~~~~~
310
+
311
+ Some further modules are currently available but not yet documented.
312
+ Please have a look into the code and you are very welcome to contribute to
313
+ this documentation.
314
+
315
+
316
+ How it's working without PyJNIus
317
+ --------------------------------
318
+
319
+ The whole Android API is accessible in Java. Their is no native or extensible
320
+ way to access it from Python. The schema for accessing to their API is::
321
+
322
+ [1] Cython -> [2] C JNI -> [3] Java
323
+
324
+ #. ``android.pyx `` is written in `Cython <http://cython.org/ >`_: a language
325
+ with typed informations, very close to Python, that generate Python
326
+ extension. It's easier to write in Cython than CPython, and it's linked
327
+ directly to the part 2.
328
+ #. ``android_jni.c `` is defining simple c methods that access to Java
329
+ interfaces using JNI layer.
330
+ #. The last part contain the Java code that will be called from the JNI stuff.
331
+
332
+ All the source code is available at:
333
+
334
+ https://github.com/kivy/python-for-android/tree/master/recipes/android/src
335
+
336
+
337
+ Example without PyJNIus
338
+ -----------------------
339
+
340
+ ::
341
+
342
+ import android
343
+
344
+ # activate the vibrator
345
+ android.vibrate(1)
346
+
347
+ # read screen dpi
348
+ print android.get_dpi()
349
+
350
+
351
+
352
+ Old Version
353
+ -----------
354
+
355
+ .. note ::
356
+
357
+ The following is from an older version and the documentation for this
358
+ part is currently not updated. Nevertheless it is included here for history
359
+ and further development aspects.
360
+
361
+
362
+ android
363
+ ~~~~~~~
364
+
365
+ .. module :: android
366
+
367
+ .. function :: check_pause()
368
+
369
+ This should be called on a regular basis to check to see if Android
370
+ expects the game to pause. If it return true, the game should call
371
+ :func: `android.wait_for_resume() `, after persisting its state as necessary.
372
+
373
+ .. function :: wait_for_resume()
374
+
375
+ This function should be called after :func: `android.check_pause() ` returns
376
+ true. It does not return until Android has resumed from the pause. While in
377
+ this function, Android may kill a game without further notice.
378
+
379
+ .. function :: map_key(keycode, keysym)
380
+
381
+ This maps between an android keycode and a python keysym. The android
382
+ keycodes are available as constants in the android module.
383
+
384
+
267
385
268
386
android_mixer
269
387
~~~~~~~~~~~~~
@@ -316,39 +434,3 @@ It has several differences from the pygame mixer:
316
434
The android_mixer module hasn't been tested much, and so bugs may be
317
435
present.
318
436
319
-
320
- How it's working without PyJNIus
321
- --------------------------------
322
-
323
- The whole Android API is accessible in Java. Their is no native or extensible
324
- way to access it from Python. The schema for accessing to their API is::
325
-
326
- [1] Cython -> [2] C JNI -> [3] Java
327
-
328
- #. ``android.pyx `` is written in `Cython <http://cython.org/ >`_: a language
329
- with typed informations, very close to Python, that generate Python
330
- extension. It's easier to write in Cython than CPython, and it's linked
331
- directly to the part 2.
332
- #. ``android_jni.c `` is defining simple c methods that access to Java
333
- interfaces using JNI layer.
334
- #. The last part contain the Java code that will be called from the JNI stuff.
335
-
336
- All the source code is available at:
337
-
338
- https://github.com/kivy/python-for-android/tree/master/recipes/android/src
339
-
340
-
341
- Example without PyJNIus
342
- -----------------------
343
-
344
- ::
345
-
346
- import android
347
-
348
- # activate the vibrator
349
- android.vibrate(1)
350
-
351
- # read screen dpi
352
- print android.get_dpi()
353
-
354
-
0 commit comments