aboutsummaryrefslogtreecommitdiff
path: root/zh-cn/devices/architecture/hidl/versioning.html
diff options
context:
space:
mode:
Diffstat (limited to 'zh-cn/devices/architecture/hidl/versioning.html')
-rw-r--r--zh-cn/devices/architecture/hidl/versioning.html10
1 files changed, 4 insertions, 6 deletions
diff --git a/zh-cn/devices/architecture/hidl/versioning.html b/zh-cn/devices/architecture/hidl/versioning.html
index f43c2f0a..78b7c5c2 100644
--- a/zh-cn/devices/architecture/hidl/versioning.html
+++ b/zh-cn/devices/architecture/hidl/versioning.html
@@ -130,7 +130,7 @@ interface IQuux {
<p><code>Bar</code> 的完全限定名称为 <code>android.hardware.example@1.0::IQuux.Foo.Bar</code>。</p>
-<p>在上述两种情况下,只有在 <code>Foo</code> 的声明范围内才能使用 <code>Bar</code> 来引用 <code>Bar</code>。在软件包级或接口级,必须通过 <code>Bar</code>:<code>Foo</code><code>Foo. 来引用 Bar</code>,如上述方法 <code>doSomething</code> 的声明中所示。或者,您可以更详细地将该方法声明为:</p>
+<p>在上述两种情况下,只有在 <code>Foo</code> 的声明范围内才能使用 <code>Bar</code> 来引用 <code>Bar</code>。在软件包级或接口级,必须通过 <code>Foo</code>:<code>Foo.<code>Bar</code> 来引用 Bar</code>,如上述方法 <code>doSomething</code> 的声明中所示。或者,您可以更详细地将该方法声明为:</p>
<pre class="prettyprint">
// IQuux.hal
@@ -210,8 +210,7 @@ struct ExtendedNfcData {
</pre>
<h3 id="rule3">规则 3</h3>
-<p>如果规则 2 未能生成匹配项(UDT 未在当前软件包中定义),HIDL 编译器会扫描所有导入的软件包,查找是否有匹配项。
-以上面的示例来说,假设 <code>ExtendedNfcData</code> 是在 <code>1.1</code> 版本的软件包 <code>android.hardware.nfc</code> 中声明的,<code>1.1</code> 按预期导入 <code>1.0</code>(请参阅<a href="#package-ext">软件包级扩展</a>),且定义仅指定 UDT 名称:</p>
+<p>如果规则 2 未能生成匹配项(UDT 未在当前软件包中定义),HIDL 编译器会扫描所有导入的软件包,查找是否有匹配项。以上面的示例来说,假设 <code>ExtendedNfcData</code> 是在 <code>1.1</code> 版本的软件包 <code>android.hardware.nfc</code> 中声明的,<code>1.1</code> 按预期导入 <code>1.0</code>(请参阅<a href="#package-ext">软件包级扩展</a>),且定义仅指定 UDT 名称:</p>
<pre class="prettyprint">
struct ExtendedNfcData {
@@ -329,7 +328,7 @@ interface IQuux {
<td><p>以下各项均为 true:</p>
<ol>
-<li>“以前的 minor 版本有效”:<code>package@major.(minor-1)</code> 必须已定义,并且遵循相同的规则 A(从 <code>package@major.0</code> 到 <code>package@major.(major-2)</code> 均未定义)或规则 B(如果它是从 <code>@major.(major-2)</code> 升级而来);
+<li>“以前的 minor 版本有效”:<code>package@major.(minor-1)</code> 必须已定义,并且遵循相同的规则 A(从 <code>package@major.0</code> 到 <code>package@major.(minor-2)</code> 均未定义)或规则 B(如果它是从 <code>@major.(minor-2)</code> 升级而来);
<br /><br />
<br /><br />
@@ -405,8 +404,7 @@ enum Color : @1.0::Brightness { HW_GREEN, RAINBOW };
<p>不过,有一种类型的关系经过严格定义,且必须强制执行,即软件包级向后兼容的继承。<em></em>在这种情况下,父级软件包是被继承的软件包,而子软件包是扩展父级的软件包。<em></em><em></em>软件包级向后兼容的继承规则如下:</p>
<ol>
-<li>父级软件包的所有接口都会被子软件包中的接口继承。</li>
-<li>父级软件包中的所有数据类型均会包含在新软件包中,并且可由来自旧软件包中的方法(可能经过了重新实现)来处理。</li>
+<li>父级软件包的所有顶级接口都会被子级软件包中的接口继承。</li>
<li>新接口也可以添加到新软件包中(与其他软件包中其他接口的关系不受限制)。</li>
<li>新数据类型也可以添加到新软件包中,以供升级的现有接口的新方法使用,或供新接口使用。</li>
</ol>