page.title=Nexus 보안 게시판
@jd:body

<!--
    Copyright 2016 The Android Open Source Project

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
<div id="qv-wrapper">
  <div id="qv">
    <ol id="auto-toc">
   </ol>
  </div>
</div>

<div id="jd-content">
 <div class="jd-descr" itemprop="articleBody">
  <!--
    Copyright 2015 The Android Open Source Project

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
  <div id="qv-wrapper">
   <div id="qv">
    <h2>
     이 문서에서 다루는 내용
    </h2>
    <ol id="auto-toc">
    </ol>
   </div>
  </div>
  <p>
   Android와 Google Play에서는 항상 보안을 최고의 주안점으로 두어 왔으며
Android는 처음부터 보안을 염두에 두고 만들어졌습니다. 월간 기기 업데이트는
Android 사용자를 안전하게 보호하고 유지하는 데 중요한 도구입니다. 이 페이지에는
사용 가능한 Nexus 보안 게시판이 포함되어 있으며, 보안 게시판에는
사용자가 기기 보안 업데이트를 최신 상태로 유지하기 위해 따를 수 있는 정보가
들어 있습니다. 아래에 제공된 보안 패치 수준을 사용하여
보안 패치 수준을 확인하는 방법에 대한 안내는
   <a href="https://support.google.com/nexus/answer/4457705">
    Nexus 도움말
   </a>
   을
참조하세요. 또한 Nexus 펌웨어 이미지가 매월
   <a href="https://developers.google.com/android/nexus/images">
    Google 개발자 사이트
   </a>
   에도 출시됩니다.
  </p>
  <table>
   <tbody>
    <tr>
     <th>
      Nexus 보안 게시판
     </th>
     <th>
      출판일
     </th>
     <th>
      Android 보안 패치 수준
     </th>
    </tr>
    <tr>
     <td>
      <a href="2015-11-01.html">
       2015년 11월
      </a>
     </td>
     <td>
      2015년 11월 2일
     </td>
     <td>
      2015년 11월 1일: [2015-11-01]
     </td>
    </tr>
    <tr>
     <td>
      <a href="2015-10-01.html">
       2015년 10월
      </a>
     </td>
     <td>
      2015년 10월 5일
     </td>
     <td>
      2015년 10월 1일: [2015-10-01]
     </td>
    </tr>
    <tr>
     <td>
      <a href="2015-09-01.html">
       2015년 9월
      </a>
     </td>
     <td>
      2015년 9월 9일
     </td>
     <td>
      해당 없음
     </td>
    </tr>
    <tr>
     <td>
      <a href="2015-08-01.html">
       2015년 8월
      </a>
     </td>
     <td>
      2015년 8월 13일
     </td>
     <td>
      해당 없음
     </td>
    </tr>
   </tbody>
  </table>
 </div>
 <div class="content-footer-sac" itemscope="" itemtype="http://schema.org/SiteNavigationElement">
  <div class="layout-content-col col-9" style="padding-top:4px">
  </div>
  <div class="paging-links layout-content-col col-4">
  </div>
 </div>
</div>
