android.html 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. <!DOCTYPE HTML>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
  6. <meta name="HandheldFriendly" content="true">
  7. <meta name="MobileOptimized" content="320">
  8. <title>Native.JS Document</title>
  9. <link rel="stylesheet" type="text/css" href="res/doc.css" charset="utf-8">
  10. <link rel="stylesheet" type="text/css" href="res/prettify.sons.css" charset="utf-8">
  11. <script type="text/javascript" src="res/doc.js" charset="utf-8"></script><script type="text/javascript" src="res/prettify.js" charset="utf-8"></script>
  12. </head>
  13. <body><div id="content" class="content">
  14. <h1><a name="plus.android">android</a></h1>
  15. <p>Native.js for Android封装一条通过JS语法直接调用Native Java接口通道,通过plus.android可调用几乎所有的系统API。</p>
  16. <h2>方法:</h2>
  17. <ul>
  18. <li>
  19. <a href="#plus.android.currentWebview">currentWebview</a>: 获取当前Webview窗口对象的native层实例对象</li>
  20. <li>
  21. <a href="#plus.android.newObject">newObject</a>: 创建实例对象</li>
  22. <li>
  23. <a href="#plus.android.getAttribute">getAttribute</a>: 获取对象(类对象/实例对象)的属性值</li>
  24. <li>
  25. <a href="#plus.android.setAttribute">setAttribute</a>: 设置对象(类对象/实例对象)的属性值</li>
  26. <li>
  27. <a href="#plus.android.implements">implements</a>: 实现Interface的方法</li>
  28. <li>
  29. <a href="#plus.android.importClass">importClass</a>: 导入Java类对象</li>
  30. <li>
  31. <a href="#plus.android.invoke">invoke</a>: 调用对象(类对象/实例对象)的方法</li>
  32. <li>
  33. <a href="#plus.android.requestPermissions">requestPermissions</a>: 请求权限</li>
  34. <li>
  35. <a href="#plus.android.runtimeMainActivity">runtimeMainActivity</a>: 获取应用主Activity实例对象</li>
  36. <li>
  37. <a href="#plus.android.autoCollection">autoCollection</a>: 自动回收对象</li>
  38. </ul>
  39. <h2>对象:</h2>
  40. <ul>
  41. <li>
  42. <a href="#plus.android.ClassObject">ClassObject</a>: Java类对象</li>
  43. <li>
  44. <a href="#plus.android.InstanceObject">InstanceObject</a>: Java实例对象</li>
  45. </ul>
  46. <h2>回调方法:</h2>
  47. <ul>
  48. <li>
  49. <a href="#plus.android.AndroidSuccessCallback">AndroidSuccessCallback</a>: 成功回调函数</li>
  50. <li>
  51. <a href="#plus.android.AndroidErrorCallback">AndroidErrorCallback</a>: 错误回调函数</li>
  52. </ul>
  53. <h2>权限:</h2>
  54. <p>5+功能模块(permissions)</p>
  55. <pre class="prettyprint linenums">
  56. {
  57. // ...
  58. "permissions":{
  59. // ...
  60. "Invocation": {
  61. "description": "Native.js"
  62. }
  63. }
  64. }
  65. </pre>
  66. <h1><a name="plus.android.ClassObject">ClassObject</a></h1>
  67. <p>Java类对象</p>
  68. <pre class="prettyprint linenums">
  69. interface ClassObject {
  70. // ...
  71. function Object plusGetAttribute( String name );
  72. function Object plusSetAttribute( String name, Object value );
  73. // ...
  74. }
  75. </pre>
  76. <h2>说明:</h2>
  77. <p class="des">
  78. Java类对象,可通过其属性获取类的常量,可通过方法来操作类的静态变量和方法,也通过new方法来创建类的实例对象。
  79. 对于类的常量,则直接通过.后面跟随常量名称调用即可。
  80. </p>
  81. <h2>方法:</h2>
  82. <ul>
  83. <li>
  84. <a href="#plus.android.ClassObject.plusGetAttribute">plusGetAttribute</a>: 获取Java类对象的静态属性</li>
  85. <li>
  86. <a href="#plus.android.ClassObject.plusSetAttribute">plusSetAttribute</a>: 设置Java类对象的静态属性</li>
  87. </ul>
  88. <h1><a name="plus.android.InstanceObject">InstanceObject</a></h1>
  89. <p>Java实例对象</p>
  90. <pre class="prettyprint linenums">
  91. interface InstanceObject {
  92. // ...
  93. function Object plusGetAttribute( String name );
  94. function Object plusSetAttribute( String name, Object value );
  95. // ...
  96. }
  97. </pre>
  98. <h2>说明:</h2>
  99. <p class="des">
  100. Java实例对象,可通过其方法来操作实例的变量和方法。
  101. 注意:必须通过plusGetAttribute()方法读取实例对象的属性值,通过plusSetAttribute()方法设置实例对象的属性值。
  102. </p>
  103. <h2>方法:</h2>
  104. <ul>
  105. <li>
  106. <a href="#plus.android.InstanceObject.plusGetAttribute">plusGetAttribute</a>: 获取Java实例对象的属性</li>
  107. <li>
  108. <a href="#plus.android.InstanceObject.plusSetAttribute">plusSetAttribute</a>: 设置Java实例对象的属性</li>
  109. </ul>
  110. <h1><a name="plus.android.AndroidSuccessCallback">AndroidSuccessCallback</a></h1>
  111. <p>成功回调函数</p>
  112. <pre class="prettyprint linenums">
  113. void onSuccess(event){
  114. }
  115. </pre>
  116. <h2>说明:</h2>
  117. <p class="des">
  118. 不同接口触发的成功回调参数event包含的属性存在差异,具体参考对应的接口描述说明。
  119. </p>
  120. <h2>参数:</h2>
  121. <ul><li>event:
  122. <em>(
  123. <font class="type">json</font>
  124. )
  125. 必选 </em>回调参数<br>
  126. 回调参数包含的属性由调用接口决定,具体参考对应的接口描述说明。
  127. </li></ul>
  128. <h2>返回值:</h2>
  129. <font class="type">void</font>
  130. : 无<h1><a name="plus.android.AndroidErrorCallback">AndroidErrorCallback</a></h1>
  131. <p>错误回调函数</p>
  132. <pre class="prettyprint linenums">
  133. function void onError(Exception error){
  134. // Handle error
  135. var code = error.code; // 错误编码
  136. var message = error.message; // 错误描述信息
  137. }
  138. </pre>
  139. <h2>参数:</h2>
  140. <ul><li>error:
  141. <em>(
  142. <font class="type">Exception</font>
  143. )
  144. 必选 </em>获取加速度操作的错误信息<br>
  145. 可通过error.code(Number类型)获取错误编码;
  146. 可通过error.message(String类型)获取错误描述信息。
  147. </li></ul>
  148. <h2>返回值:</h2>
  149. <font class="type">void</font>
  150. : 无<br><br>
  151. </div></body>
  152. </html>