page.title=下载 page.image=images/cards/card-download_16-9_2x.png @jd:body <div style="position:relative; min-height:600px"> <div class="wrap" id="tos" style="position:absolute;display:none;width:inherit;"> <p class="sdk-terms-intro">在下载和安装预览版 Android SDK 的组件之前,您必须同意下列条款和条件。 </p> <h2 class="norule">条款和条件</h2> <div class="sdk-terms" onfocus="this.blur()" style="width:678px"> 本协议是 Android SDK 预览版许可协议(以下称为“许可协议”)。 1. 简介 1.1 Android SDK 预览版(在本许可协议中简称为“预览版”,具体包括 Android 系统文件、封装 API 以及预览版库文件(若可用))依据本许可协议的条款授权您使用。本许可协议在您与 Google 之间就您对“预览版”的使用构成具有法律约束力的合约。 1.2 “Android”是指以 Android 开源项目(项目网址为 http://source.android.com/,其内容会不时更新)名义提供、面向设备的 Android 软件栈。 1.3 “Google”是指 Google Inc.,是一家特拉华州公司,主要营业地位于:1600 Amphitheatre Parkway, Mountain View, CA 94043, United States。 2. 接受许可协议 2.1 要使用“预览版”,您必须先同意本许可协议。如果您不接受本许可协议,则不得使用“预览版”。 2.2 点击接受并/或使用“预览版”,即表示您特此同意本许可协议的条款。 2.3 如果依照美国或其他国家/地区(包括您居住或您使用“预览版”所在的国家/地区)的法律,您被禁止获取“预览版”,则您不得使用“预览版”,也不得接受本许可协议。 2.4 如果您将在贵公司或组织内部使用“预览版”,则您同意代表您的雇主或其他实体接受本许可协议的约束,并且您表示并保证您拥有完全的合法授权令您的雇主或上述实体受本许可协议的约束。如果您不具备必要的授权,则不得代表您的雇主或其他实体接受本许可协议或使用“预览版”。 3. Google 预览版许可 3.1 Google 依据本许可协议的条款授予您个人或在贵公司或组织内部有限使用“预览版”的免版税、不可转让、非独占性、不可再授权且可撤销的许可,其用途仅限开发在 Android 平台上运行的应用。 3.2 您同意 Google 或第三方拥有“预览版”中存在或相关的全部合法权利、所有权和利益,包括“预览版”中存在的任何知识产权。“知识产权”是指根据专利法、版权法、商业机密法、商标法享有的任何及全部权利,以及其他任何及全部专有权利。Google 保留所有未明确授予您的权利。 3.3 您不得将“预览版”用于本许可协议未明确允许的任何用途。您不得:(a) 对“预览版”或“预览版”的任何部分进行复制(备份用途除外)、修改、改编、再分发、反编译、逆向工程、反汇编或创建其衍生品;或 (b) 将“预览版”的任何部分加载到移动手持终端或除个人计算机之外的任何其他硬件设备上,将“预览版”的任何部分与其他软件合并,或者发行任何融入“预览版”某一部分的软件或设备。 3.4 您同意您将不会进行任何可能引起或导致 Android 碎片化的行动,包括但不限于分发、参与创建或以任何方式推广从“预览版”衍生的软件开发工具包。 3.5 对于依据开源软件许可授权的“预览版”组件,其使用、复制和分发仅受该开源软件许可条款的制约,不受本许可协议的约束。您同意在依照被授予的所有权利作为被许可方期间,在遵守此类开源软件许可协议方面始终保持良好的信誉,并避免进行任何可能导致终止、暂停或违反此类权利的行动。 3.6 您同意 Google 所提供“预览版”的形式和性质可随时发生变更,而无需事先通知您,并且未来的“预览版”版本可能会与在之前的“预览版”版本上开发的应用不兼容。您同意 Google 可单方面决定在未事先通知您的情况下全面停止(永久性或暂时性)向您或用户提供“预览版”(或“预览版”内的任何功能)。 3.7 本许可协议内没有任何条款授予您使用 Google 的任何商品名、商标、服务标志、徽标、域名或其他独特品牌特征的权利。 3.8 您同意您不会移除、遮盖或篡改“预览版”上可能贴有或“预览版”内可能包含的任何专有权利声明(包括版权声明和商标声明)。 4. 您对“预览版”的使用 4.1 Google 同意本许可协议中的任何条款均未授予 Google 从您(或您的许可方)处获取您依照本许可协议使用“预览版”开发的任何软件应用中存在或与其相关的权利、所有权或利益,包括这些应用中存在的任何知识产权。 4.2 您同意只出于 (a) 本许可协议和 (b) 相关管辖区域内任何适用法律、法规或公认惯例或准则(包括有关向美国或其他相关国家/地区出口数据或软件或从美国或其他相关国家/地区进口数据或软件的任何法律)所允许的目的而使用“预览版”和编写应用。 4.3 您同意,如果您使用“预览版”开发应用,您将会保护用户的隐私权和合法权利。如果用户向您提供用户名、密码或其他登录信息或个人信息,您必须确保用户知晓这些信息将供您的应用使用,并且您必须为这些用户提供足以满足法律要求的隐私声明和保护。如果您的应用存储由用户提供的个人信息或敏感信息,其存储方式必须安全。如果用户向您提供 Google 帐户信息,您的应用只能在用户允许时出于用户所许可的有限目的使用该信息访问用户的 Google 帐户。 4.4 您同意您不会利用“预览版”从事任何干扰、中断、损坏或以未经授权方式访问 Google 或任何第三方的服务器、网络或其他财产或服务的Activity(包括应用的开发或分发)。 4.5 您同意您对通过 Android 和/或 Android 应用创建、传输或显示的任何数据、内容或资源以及您的行为所导致的后果(包括 Google 可能遭受的任何损失或损害)负全责(Google 在上述方面对您或任何第三方不承担任何责任)。 4.6 您同意您为违反本许可协议、任何适用的第三方合约或服务条款或任何适用法律或法规下的义务以及任何上述违规行为所导致的后果(包括 Google 或任何第三方可能遭受的任何损失或损害)负全责(Google 在上述方面对您或任何第三方不承担任何责任)。 4.7 “预览版”正在开发中,您的测试和反馈是开发过程的重要环节。使用“预览版”,即表示您承认某些功能仍在开发实现之中,您不应期望“预览版”具备稳定版本的全部功能。您同意不使用此“预览版”公开发布或发运任何应用,因为此“预览版”在 Android SDK 正式发行之后将不再受支持。 5. 您的开发者凭据 5.1 您同意,对于 Google 可能向您发放或可能由您自行选择的任何开发者凭据,您有责任保持其机密性,并且您对以您的开发者凭据名义开发的所有应用负全责。 6. 隐私权和信息 6.1 为持续创新和改进“预览版”,Google 可能会从软件收集某些使用统计数据,包括但不限于唯一标识符、关联的 IP 地址、软件的版本号以及有关软件使用了“预览版”中哪些工具和/或服务及其使用方式的信息。在收集任何上述信息之前,“预览版”都会通知您并征求您的同意。如果您拒绝同意,我们将不会收集这些信息。 6.2 我们会对收集的数据进行汇总调查,以便改进“预览版”,并会按照 Google 的隐私政策(网址为 http://www.google.com/policies/privacy/)维护数据。 7. 第三方应用 7.1 如果您使用“预览版”运行由第三方开发或访问由第三方提供的数据、内容或资源的应用,您同意 Google 对这些应用、数据、内容或资源不承担任何责任。您理解,您通过上述第三方应用可能访问到的所有数据、内容或资源由其提供者负全责,Google 对您因使用或访问其中任何第三方应用、数据、内容或资源而遭受的任何损失或损害不承担任何责任。 7.2 您应知晓,通过此类第三方应用提供给您的数据、内容和资源可能受提供商(或代表他们的其他人员或公司)所拥有的知识产权的保护。除非相关所有者明确给予许可,否则您不得修改、出租、租赁、借出、出售、分发这些数据、内容或资源(的全部或部分),或以其为基础创建衍生品。 7.3 您承认您对上述第三方应用、数据、内容或资源的使用可能受到您与相关第三方之间单独订立的条款的制约。 8. 使用 Google API 8.1 Google API 8.1.1 如果您使用任何 API 从 Google 检索数据,即表示您承认这些数据可能受到 Google 或这些数据提供方(或代表他们的其他人员或公司)拥有的知识产权的保护。您对任何上述 API 的使用可能受到附加服务条款的制约。除非相关服务条款允许,否则您不得修改、出租、租赁、借出、出售、分发这些数据(的全部或部分),或以其为基础创建衍生品。 8.1.2 如果您使用任何 API 从 Google 检索用户数据,即表示您承认并同意您只有在征得用户明确同意时才会检索数据,并且只能在用户允许时出于用户许可的有限目的检索数据。 9. 终止许可协议 9.1 本许可协议将持续有效,直至您或 Google 按以下规定终止本协议。 9.2 如果您想终止本许可协议,可通过停止使用“预览版”以及任何相关开发者凭据予以终止。 9.3 Google 有权在向您在作出通知后,有理由或无理由地随时终止与您订立的这份许可协议。 9.4 本许可协议将在下列情况下自动终止,而无需另行通知或采取其他行动,以先符合条件者为准: (A) Google 在您居住或使用服务所在国家/地区停止向用户提供“预览版”或“预览版”的某些部分; (B) Google 发行 Android SDK 的最终版本。 9.5 在本许可协议终止时,本许可协议中向您授予的许可将终止,您应立即完全停止使用“预览版”,并且第 10、11、12 和 14 节的条款将无限期继续存在。 10. 免责声明 10.1 您明确理解并同意,您使用“预览版”的风险将由您自行承担,并且“预览版”是按“原样”和“现状”提供,Google 不提供任何类型的担保。 10.2 您对“预览版”的使用以及通过使用“预览版”下载或以其他方式获得的任何材料由您自行决定,风险自负,并且对于因此类使用而对您的计算机系统或其他设备造成的任何损害或数据损失由您单方面负责。在不对上文所述予以限制的条件下,您了解“预览版”并非稳定版本,可能存在将导致重大损害的错误、缺陷和安全漏洞,包括无法挽回地完全无法使用您的计算机系统或其他设备。 10.3 Google 进一步明确拒绝任何类型的所有担保和条件,无论明示或暗示,包括但不限于有关适销性、特定用途适用性以及非侵权的暗示担保和条件。 11. 有限责任 11.1 您明确理解并同意,对于您可能遭遇的任何直接、间接、附带、特殊、继发或惩罚性损害(包括任何数据损失),Google 及其子公司和附属公司以及其许可方在任何责任理论下对您概不承担任何责任,无论 Google 或其代表是否已被告知或是否本应知晓发生任何上述损失的可能性。 12. 赔偿 12.1 您同意,在法律所允许的最大限度内,为 Google、其附属公司及其各自的董事、高管、员工和代理商提供辩护,使其免于因下列情况引起或产生的任何及所有索赔、诉讼、起诉或诉讼程序以及任何及所有损失、债务、损害、成本和费用(包括合理的律师费用)而承担责任或遭受损害:(a) 您对“预览版”的使用;(b) 您在“预览版”上开发的任何应用侵犯任何人的任何知识产权或诽谤任何人或侵犯其公开权或隐私权;以及 (c) 您的任何行为有悖于本许可协议 13. 许可协议的更改 13.1 Google 可能会在分发新版本“预览版”时对许可协议做出更改。做出这些更改后,Google 将在提供“预览版”的网站上公布新版本的许可协议。 14. 一般法律条款 14.1 本许可协议构成您与 Google 之间的完整法律协议,管辖您对“预览版”(不包括 Google 可能依据另外的书面协议向您提供的任何服务)的使用,并完全取代您之前与 Google 之间签订的、与“预览版”有关的任何协议。 14.2 您同意,如果 Google 未行使或未强制执行本许可协议包含的任何法定权利或救济(或 Google 在任何适用法律下享有的相关利益),不得视为 Google 正式放弃这些权利,Google 仍可获得这些权利或救济。 14.3 如果任何拥有管辖权的法院将本许可协议的任何条款裁定为无效,则该条款将从本许可协议中删除,而不会影响本许可协议的其余部分。本许可协议的其余条款将继续有效且可强制执行。 14.4 您承认并同意,Google 集团旗下的每一家公司都将成为本许可协议的第三方受益人,并且此类其他公司将有权直接强制执行和依赖本许可协议中任何授予其利益(或支持其权利)的条款。除此之外,任何其他人员或公司均不得成为本许可协议的第三方受益人。 14.5 出口限制。“预览版”受美国出口法律和法规的制约。您必须遵守适用于“预览版”的所有国内和国际出口法律和法规。这些法律包括目的地、最终用户和最终用途方面的限制。 14.6 未经 Google 事先书面批准,您不得擅自转让或转移本许可协议,未经此类批准而试图进行的任何转让均为无效。未经 Google 事先书面批准,您不得委托您依据本许可协议所应承担的责任或义务。 14.7 本许可协议以及您与 Google 依据本许可协议而建立的关系受加利福尼亚州法律管辖,而无论其是否与其他法律条款冲突。您与 Google 同意服从位于加利福尼亚州圣克拉拉县内法院的专属司法管辖权,以解决本许可协议引起的任何法律事务。尽管有上述规定,您同意仍允许 Google 在任何管辖区域申请禁令救济(或同等类型的紧急法律救济)。 </div><!-- sdk terms --> <div id="sdk-terms-form"> <p> <input id="agree" type="checkbox" name="agree" value="1" onclick="onAgreeChecked()" /> <label id="agreeLabel" for="agree">我已阅读并同意上述条款和条件</label> </p> <p><a href="" class="button disabled" id="downloadForRealz" onclick="return onDownloadForRealz(this);"></a></p> </div> </div><!-- end TOS --> <div id="landing"> <div id="qv-wrapper"> <div id="qv"> <h2>本文内容</h2> <ol> <li><a href="#sdk">预览版 SDK</a></li> <li><a href="#docs">开发者文档</a></li> <li><a href="#images">硬件系统映像</a></li> </ol> <h2>Legacy downloads</h2> <ol> <li><a href="{@docRoot}preview/download_mp1.html">Developer Preview Archive</a></li> </ol> </div> </div> <p> Android M 预览版 SDK 包括开发工具、Android 系统文件和库文件,旨在帮助您在下一版本的平台中测试您的应用以及该平台提供的新 API。 本文旨在介绍如何获得“预览版”的可下载组件,以便测试您的应用。 </p> <h2 id="sdk">预览版 SDK</h2> <p> 预览版 SDK 可通过 <a href="{@docRoot}tools/help/sdk-manager.html">Android SDK 管理器</a>下载。如需了解有关下载和配置预览版 SDK 的详细信息,请参阅<a href="{@docRoot}preview/setup-sdk.html#downloadSdk">设置预览版 SDK</a>。 </p> <h2 id="docs">开发者文档</h2> <p> 开发者文档下载软件包提供详细的 API 参考信息和“预览版”的 API 差异报告。 </p> <table> <tr> <th scope="col">Description</th> <th scope="col">Download / Checksums</th> </tr> <tr id="docs-dl"> <td>Android M Preview 2<br>Developer Docs</td> <td><a href="#top" onclick="onDownload(this)" >m-preview-2-developer-docs.zip</a><br> MD5: 1db6fff9c722b0339757e1cdf43663a8<br> SHA-1: 5a4ae88d644e63824d21b0e18f8e3977a7665157 </td> </tr> </table> <h2 id="images">硬件系统映像</h2> <p> 这些系统映像允许您在实际设备上安装预览版平台,以便进行测试。 通过使用这些映像之一配置设备,您可以安装并测试您的应用,以了解其在下一版本平台上的性能表现。 在设备上安装系统映像的过程会<em>删除设备中的所有数据</em>,因此您应该在安装系统映像之前备份数据。 </p> <p class="warning"> <b>警告:</b>以下 Android 系统映像是预览版,可能会随时发生变化。您对这些系统映像的使用受 Android SDK 预览版许可协议的制约。 Android 预览版系统映像并非稳定版本,可能包含会对您的计算机系统、设备和数据造成损害的错误和缺陷。 Android 预览版系统映像未经过与出厂操作系统相同的测试,可能会导致您的手机和安装的服务与应用停止工作。 </p> <table> <tr> <th scope="col">Device</th> <th scope="col">Download / Checksums</th> </tr> <tr id="hammerhead"> <td>Nexus 5 (GSM/LTE) <br>"hammerhead"</td> <td><a href="#top" onclick="onDownload(this)" >hammerhead-MPZ79M-preview-b1f4bde4.tgz</a><br> MD5: 2ca9f18bf47a061b339bab52647ceb0d<br> SHA-1: b1f4bde447eccbf8ce5d9b8b8ba954e3eac8e939 </td> </tr> <tr id="shamu"> <td>Nexus 6 <br>"shamu"</td> <td><a href="#top" onclick="onDownload(this)" >shamu-MPZ79M-preview-e1024040.tgz</a><br> MD5: 24a2118da340b9afedfbdfc026f6ff81<br> SHA-1: e10240408859d5188c4aae140e1c539130ba614b </td> </tr> <tr id="volantis"> <td>Nexus 9 <br>"volantis"</td> <td><a href="#top" onclick="onDownload(this)" >volantis-MPZ79M-preview-9f305342.tgz</a><br> MD5: 9edabf0a4c61b247f1cbb9dfdc0a899e<br> SHA-1: 9f30534216f10899a6a75495fc7e92408ea333a7 </td> </tr> <tr id="fugu"> <td>Nexus Player <br>"fugu"</td> <td><a href="#top" onclick="onDownload(this)" >fugu-MPZ79N-preview-fb63af98.tgz</a><br> MD5: e8d081137a20b66df595ee69523314b5<br> SHA-1: fb63af98302dd97be8de9313734d389ccdcce250 </td> </tr> </table> <h3 id="install-image">将映像安装到设备</h3> <p> 要使用设备映像进行测试,您必须将其安装到兼容设备上。请按照下面的说明安装系统映像: </p> <ol> <li>下载并解压此处列出的系统映像包之一。</li> <li>备份设备中您希望予以保留的任何数据。</li> <li>按照 <a href="https://developers.google.com/android/nexus/images#instructions">developers.google.com/android</a> 中的说明将映像刷入设备中。</li> </ol> <p class="note"> <strong>注:</strong>为开发设备刷入预览版系统映像之后,它将通过无线 (OTA) 更新自动升级到下一个预览版本。 </p> <h3 id="revertDevice">将设备还原至出厂规格</h3> <p> 如果您想要卸载预览版并将设备还原至出厂规格,请转到 <a href="http://developers.google.com/android/nexus/images">developers.google.com/android</a> 并下载要为设备刷入的映像。 按照该页面上的说明将映像刷入设备中。 </p> </div><!-- landing --> </div><!-- relative wrapper --> <script> var urlRoot = "http://storage.googleapis.com/androiddevelopers/shareables/preview/"; function onDownload(link) { $("#downloadForRealz").html("Download " + $(link).text()); $("#downloadForRealz").attr('href', urlRoot + $(link).text()); $("#tos").fadeIn('fast'); $("#landing").fadeOut('fast'); return true; } function onAgreeChecked() { /* verify that the TOS is agreed */ if ($("input#agree").is(":checked")) { /* reveal the download button */ $("a#downloadForRealz").removeClass('disabled'); } else { $("a#downloadForRealz").addClass('disabled'); } } function onDownloadForRealz(link) { if ($("input#agree").is(':checked')) { /* $("#tos").fadeOut('fast'); $("#landing").fadeIn('fast'); */ ga('send', 'event', 'M Preview', 'System Image', $("#downloadForRealz").html()); /* location.hash = ""; */ return true; } else { return false; } } $(window).hashchange( function(){ if (location.hash == "") { location.reload(); } }); </script>