website: update Japanese translation (#1387)
Signed-off-by: dabao1955 <dabao1955@163.com>
This commit is contained in:
58
website/docs/ja_JP/guide/how-to-build.md
Normal file
58
website/docs/ja_JP/guide/how-to-build.md
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
# KernelSU のビルド方法は?
|
||||||
|
|
||||||
|
まず、Android の公式ドキュメントを読むべきです:
|
||||||
|
|
||||||
|
1. [カーネルをビルドする](https://source.android.com/docs/setup/build/building-kernels)
|
||||||
|
2. [GKI リリースビルド](https://source.android.com/docs/core/architecture/kernel/gki-release-builds)
|
||||||
|
|
||||||
|
::: 警告
|
||||||
|
このページは GKI デバイス用です。もし古いカーネルを使用している場合は、[古いカーネルへの KernelSU の統合方法](how-to-integrate-for-non-gki)を参照してください。
|
||||||
|
:::
|
||||||
|
|
||||||
|
## カーネルビルド
|
||||||
|
|
||||||
|
### カーネルソースコードの同期
|
||||||
|
|
||||||
|
```sh
|
||||||
|
repo init -u https://android.googlesource.com/kernel/manifest
|
||||||
|
mv <kernel_manifest.xml> .repo/manifests
|
||||||
|
repo init -m manifest.xml
|
||||||
|
repo sync
|
||||||
|
```
|
||||||
|
|
||||||
|
`<kernel_manifest.xml>` は、ビルドを一意に決定するマニフェストファイルです。マニフェストを使用して再現可能なビルドを行えます。マニフェストファイルは [Google GKI リリースビルド](https://source.android.com/docs/core/architecture/kernel/gki-release-builds) からダウンロードしてください。
|
||||||
|
|
||||||
|
### ビルド
|
||||||
|
|
||||||
|
まずは [公式ドキュメント](https://source.android.com/docs/setup/build/building-kernels)を確認してください。
|
||||||
|
|
||||||
|
たとえば、aarch64 カーネルイメージをビルドする必要があります:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
LTO=thin BUILD_CONFIG=common/build.config.gki.aarch64 build/build.sh
|
||||||
|
```
|
||||||
|
`LTO=thin` フラグを追加するのを忘れないでください。それをしないと、コンピュータのメモリが 24Gb 未満の場合にビルドに失敗する可能性があります。
|
||||||
|
|
||||||
|
Android 13 からは、カーネルは `bazel` によってビルドされます:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
tools/bazel build --config=fast //common:kernel_aarch64_dist
|
||||||
|
```
|
||||||
|
## KernelSU を使ったカーネルビルド
|
||||||
|
|
||||||
|
もしカーネルを正常にビルドできた場合、KernelSU をビルドするのは簡単です。カーネルソースのルートディレクトリで任意のものを選択して実行します:
|
||||||
|
|
||||||
|
::: code-group
|
||||||
|
```sh[最新タグ(安定版)]
|
||||||
|
curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -
|
||||||
|
```
|
||||||
|
```sh[ main ブランチ (開発用)]
|
||||||
|
curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -s main
|
||||||
|
```
|
||||||
|
```sh[タグを選択 (例:v0.5.2)]
|
||||||
|
curl -LSs "https://raw.githubusercontent.com/tiann/KernelSU/main/kernel/setup.sh" | bash -s v0.5.2
|
||||||
|
```
|
||||||
|
|
||||||
|
:::
|
||||||
|
|
||||||
|
その後でカーネルを再ビルドすると、KernelSU が組み込まれたカーネルイメージが得られます!
|
||||||
48
website/docs/ja_JP/guide/module-webui.md
Normal file
48
website/docs/ja_JP/guide/module-webui.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
# Module WebUI
|
||||||
|
|
||||||
|
KernelSU のモジュールは、ブートスクリプトの実行やシステムファイルの修正に加えて、UI インターフェースの表示やユーザーとの対話もサポートしています。
|
||||||
|
|
||||||
|
モジュールは、任意の Web 技術を通じて HTML + CSS + JavaScript のページを作成することができます。KernelSU のマネージャーは WebView を通じてこれらのページを表示します。また、シェルコマンドの実行など、システムと対話するためのいくつかのAPIを提供しています。
|
||||||
|
|
||||||
|
## webroot ディレクトリ
|
||||||
|
|
||||||
|
Web リソースファイルは、モジュールのルートディレクトリの webroot サブディレクトリに置かれるべきであり、index.html という名前のファイルが必ず存在しなければなりません。これがモジュールページのエントリです。Web インターフェイスを含む最もシンプルなモジュール構造は以下の通りです:
|
||||||
|
|
||||||
|
```txt
|
||||||
|
❯ tree .
|
||||||
|
.
|
||||||
|
|-- module.prop
|
||||||
|
`-- webroot
|
||||||
|
`-- index.html
|
||||||
|
```
|
||||||
|
|
||||||
|
:::警告
|
||||||
|
モジュールをインストールするとき、KernelSU はこのディレクトリのパーミッションと SELinux コンテキストを自動的に設定します。何をしているかわからないのであれば、自分でこのディレクトリのパーミッションを設定しないでください!
|
||||||
|
:::
|
||||||
|
|
||||||
|
ページに css や JavaScript が含まれている場合は、このディレクトリに配置する必要があります。
|
||||||
|
|
||||||
|
## Javascript API
|
||||||
|
|
||||||
|
単なる表示ページであれば、通常の Web ページとの違いはありません。より重要なのは、KernelSU がモジュールの固有機能を実装させるための一連のシステム API を提供することです。
|
||||||
|
|
||||||
|
KernelSU は Javascript ライブラリを提供し、[npm で公開しています](https://www.npmjs.com/package/kernelsu)。これを Web ページの JavaScript コードで使用することができます。
|
||||||
|
|
||||||
|
たとえば、特定の設定を取得したり、プロパティを変更するために、シェルコマンドを実行することができます:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
import { exec } from 'kernelsu';
|
||||||
|
|
||||||
|
const { errno, stdout } = exec("getprop ro.product.model");
|
||||||
|
```
|
||||||
|
|
||||||
|
別の例として、Webページをフルスクリーンで表示したり、トーストを表示することができます。
|
||||||
|
|
||||||
|
[API ドキュメント](https://www.npmjs.com/package/kernelsu)
|
||||||
|
|
||||||
|
既存のAPIがご自身のニーズを満たしていない、または使い勝手が不便である場合、[こちら](https://github.com/tiann/KernelSU/issues)でご提案いただければ幸いです!
|
||||||
|
|
||||||
|
## いくつかのヒント
|
||||||
|
|
||||||
|
1. localStorage を通常通りに使用してデータを保存することができますが、Manager アプリをアンインストールした後には失われます。永続的に保存する必要がある場合は、自分でいくつかのディレクトリにデータを書き込むことができます。
|
||||||
|
2. シンプルなページには、[parceljs](https://parceljs.org/)を使用することをお勧めします。設定が不要で非常に便利です。しかし、フロントエンドの達人である場合や、自分の好みがある場合は、気に入ったものを選んでください!
|
||||||
Reference in New Issue
Block a user