Capacitor __CAPGO_KEEP_0__は、iOSとAndroid向けのアプリを同じコードベースで開発するのに役立ちます。また、プラットフォーム固有の差異を解決し、ガイドラインへの準拠を確保し、パフォーマンスを最適化します。主な特徴は次のとおりです。
- プラットフォーム検出: 使用
Capacitor.getPlatform()プラットフォーム固有のcodeを適用する - 組み込みプラグイン: カメラ、ストレージ、位置情報などの機能に統一されたAPI
- カスタムプラグイン: 一意の要件にnative codeを追加する
- UI調整: iOS (例えば、 SF Symbols,丸いボタン)とAndroid (例えば、 Material Icons, 左寄せのボタン).
- 設定: 両方のプラットフォームの設定を調整します。
capacitor.config.json両方のプラットフォーム - リアルタイム更新 Capgo: アプリストアの遅延なしで即時更新を実行できます。24時間以内に95%のユーザー採用率を達成します。
比較
| 機能 | iOS | Android |
|---|---|---|
| ナビゲーション | 下部タブバー、左の戻るボタン | 上部ナビゲーションドロワー、下部ナビゲーション |
| タイポグラフィ | San Francisco フォント | Roboto フォント |
| プラグイン(例:カメラ) | AVFoundation | カメラ2 API |
| ビルド出力 | .ipa ファイル | .aab または .apk ファイル |
Capacitorはウェブとネイティブアプリ開発のギャップを埋め、クロスプラットフォームアプリの作成を容易にし、プラットフォーム固有の最適化を維持します。
クロスプラットフォーム開発: CapacitorJSを…
は Capacitor Handles Platform Code

Capacitor offers tools to manage platform-specific code, allowing developers to create tailored experiences for iOS and Android using a single API.
Codeは、iOSとAndroid向けにカスタマイズされたエクスペリエンスを作成するために、開発者に単一の__CAPGO_KEEP_2__を提供するプラットフォーム固有の__CAPGO_KEEP_1__を管理するツールを提供します。
With Capacitor’s built-in platform API, detecting the current platform is simple. The Capacitor.getPlatform() __CAPGO_KEEP_0__の組み込みプラットフォーム__CAPGO_KEEP_1__を使用すると、現在のプラットフォームを検出することが簡単になります。この
import { Capacitor } from '@capacitor/core';
const platform = Capacitor.getPlatform();
if (platform === 'ios') {
// Code specific to iOS
} else if (platform === 'android') {
// Code specific to Android
}
メソッドは、実行中の環境を識別し、条件付きロジックを適用することが容易になります:「このアプローチは、特に機能のように「 生体認証, iOSではFace IDを、Androidでは指紋認証を使用します。プラットフォームの検出に加えて、__CAPGO_KEEP_0__の組み込みプラグインはネイティブの統合を簡素化します。 プラットフォーム固有の機能 Capacitorには、プラットフォーム固有の差異を自動的に処理するコアプラグインが含まれています。これらのプラグインは、ネイティブの実装の複雑さを管理しながら、統一されたJavaScriptインターフェイスを提供します。
プラグイン
Capacitor comes with a set of core plugins that handle platform-specific differences seamlessly. These plugins manage the complexities of native implementations while providing a consistent JavaScript interface:
| Android実装 | カメラ | AVFoundation |
|---|---|---|
| Camera2 | __CAPGO_KEEP_0__ | API |
| Storage | UserDefaults | SharedPreferences |
| 位置情報 | CoreLocation | LocationManager |
__CAPGO_KEEP_0__は各プラットフォームのネイティブAPIを自動的に使用するため、Smoothなパフォーマンスと機能性を保証します。
カスタムプラットフォームプラグインを作成
標準のプラグインが必要な場合に不足している場合は、特定のネイティブAPIにアクセスするカスタムプラグインを作成できます。ここでは、方法を紹介します。
-
プラグインの定義
@Plugin({ name: 'CustomFeature', platforms: ['ios', 'android'] }) -
ネイティブCodeを追加
@PluginMethod() async customFunction(): Promise<void> { if (Capacitor.getPlatform() === 'ios') { // Add iOS-specific code } else { // Add Android-specific code } } -
__CAPGO_KEEP_0__の実装
-
iOS (Swift):
@objc func customFunction(_ call: CAPPluginCall) { // Add native iOS functionality } -
Android (Kotlin):
@PluginMethod fun customFunction(call: PluginCall) { // Add native Android functionality }
-
カスタム プラグインは、API の一貫性と使いやすさを保ちながら、ネイティブ機能へのアクセスを可能にします。これにより、開発プロセスを複雑にしないまま、パフォーマンスと機能性が確保されます。
プラットフォーム固有のUIガイドライン
iOSとAndroidのデザインルール
iOSとAndroidのデザインを行う際には、ネイティブのデザインパターンを遵守することが重要です。各プラットフォームのユーザーは、ナビゲーション、フォント、ボタン、ヘッダー、アイコンなどのことについて、異なる期待をしています。ここでは、それらを比較検討します。
| デザイン要素 | iOS | Android |
|---|---|---|
| ナビゲーション | 下部タブバー、左側の戻るボタン | 上部ナビゲーションドロワー、下部ナビゲーション |
| フォント | San Francisco フォント | Roboto フォント |
| ボタン | 丸角の長方形、中央寄せのテキスト | Material Design ボタン、左寄せのテキスト |
| ヘッダー | 大きいタイトル、中央寄せ | アプリバー |
| 左寄せのテキスト | アイコン | SF Symbols |
クロスプラットフォーム デザイン基準
各プラットフォームには独自のルールがありますが、両方で一貫したブランドアイデンティティを維持することは重要です。ここでは、一貫性を確保する方法について説明します。
const sharedStyles = {
primaryColor: '#007AFF', // iOS blue
androidPrimaryColor: '#6200EE', // Material Design purple
borderRadius: Capacitor.getPlatform() === 'ios' ? '10px' : '4px'
};
:root {
--app-header-height: var(--platform-header-height, 56px);
--app-safe-area-top: var(--platform-safe-area-top, 0px);
}
Capacitorを使用すると、プラットフォーム固有のUIコンポーネントを統合しながら、機能の統一性を維持できます。また、Dark ModeやDynamic Typeなどのシステム全体の設定を管理するのにも役立ちます。プロセスを完了するには、プラットフォーム固有のビルド設定がこれらのガイドラインと一致していることを確認してください。
プラットフォーム設定と構成
After managing your platform code, proper configuration is essential to ensure your app runs smoothly on both iOS and Android.
プラットフォーム設定 capacitor.config.json
「 capacitor.config.json 」を使用して、重要なプラットフォーム固有の設定を定義してください。
{
"appId": "com.example.app",
"appName": "MyApp",
"ios": {
"contentInset": "always",
"backgroundColor": "#ffffff",
"scheme": "myapp",
"preferredContentMode": "mobile"
},
"android": {
"backgroundColor": "#FFFFFF",
"allowMixedContent": true,
"captureInput": true,
"webContentsDebuggingEnabled": true
}
}
ここでは、考慮すべき構成オプションを紹介します。
| オプション | iOS | Android |
|---|---|---|
| Deep Links | scheme __CAPGO_KEEP_0__ | androidScheme __CAPGO_KEEP_0__ |
| Status Bar | statusBar.style | statusBar.backgroundColor |
| キーボード | keyboard.resize | keyboard.resize, keyboard.style |
| Splash Screen | splashScreen.launchShowDuration | splashScreen.layoutName |
実行環境の設定が完了したら、各プラットフォームのパフォーマンスを向上させるためにビルド設定を調整してください。
プラットフォーム固有のビルド設定
iOSとAndroid用のアプリを最適化するためにビルド設定を微調整してください。
iOSの場合、 Info.plist file:
<key>NSCameraUsageDescription</key>
<string>Required for document scanning</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Required for store locator</string>
Androidの場合、 android/app/build.gradle:
android {
defaultConfig {
minSdkVersion 21
targetSdkVersion 33
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt')
}
}
}
ビルドの重要な考慮事項はこちらです:
| アスペクト | iOS | パーミッション |
|---|---|---|
| Add entries in | Define in Info.plist | アイコン AndroidManifest.xml |
| __CAPGO_KEEP_0__から1024pxまでのサイズ | __CAPGO_KEEP_0__からmdpiまでの密度 | スプラッシュスクリーン |
| Storyboardベース | __CAPGO_KEEP_0__ | レイアウト XMLベース |
| ビルド出力 | .ipa ファイル | .aab または .apk ファイル |
iOSおよびAndroid両方で Capgo

両方のプラットフォームのガイドラインに沿ったライブアップデートシステムを提供するために、 Capacitor Capgo
iOSおよびAndroid両方で効率的にアップデートされるアプリの更新は重要です。Capgoは、両方のプラットフォームのガイドラインに沿ったライブアップデートシステムを提供します。
| 機能 | 説明 | プラットフォームの利点 |
|---|---|---|
| リアルタイムの更新 | 即時配布、審査なし | iOSとAndroidで統一された体験を保証 |
| 端末間の暗号化 | 更新配布のセキュリティを確保 | 両プラットフォームのセキュリティ要件を満たす |
| チャネルシステム | 特定のユーザーグループをターゲット | ベータテストとフェーズドロールアウトをサポート |
| 部分更新 | ダウンロードのみ変更されたコンテンツ | バンド幅を節約し、更新を高速化 |
Capgoは、24時間以内に95%のアクティブユーザーが更新を実行した、23.5万の更新を実行しました。 [1]これらの機能により 更新管理 プラットフォーム間で滑らかで効率的な更新管理
Capgoプラットフォーム管理
Capgoのチャンネルシステムにより、更新の管理が容易になります。開発者はiOS向けの機能をベータユーザーと共有し、Androidの更新を段階的に実行し、パフォーマンスメトリクスをトラッキングできます。
プラットフォームはAppleとGoogleのオーバー・ザ・エア更新要件に準拠しています [1].
現在、750の製品アプリがCapgoに依存しており、82%のグローバル更新成功率を維持しています [1]__CAPGO_KEEP_0__のCI/CD統合により、デプロイメントが簡素化され、ロールバック機能により、問題が発生した場合に前のバージョンに戻すことができます。リアルタイムの分析により、更新のパフォーマンスに関する洞察が得られ、アプリの安定性を維持できます。
まとめ
プラットフォーム管理の利点
Capacitorでプラットフォームの違いを効果的に管理すると、クロスプラットフォーム開発が向上します。プラットフォームの検出と設定のための組み込みツールを備えたCapacitorは、iOSとAndroid両方に対してSmoothなエクスペリエンスを提供することができ、各プラットフォームの独自のデザインスタンダードと機能を尊重することができます。
プラットフォーム管理に重点を置くことで、開発チームは更新を迅速にリリースし、ユーザーの満足度を向上させることができます。Capgoなどのツールは、一貫したプラットフォームハンドリングが更新成功率の向上とユーザーエクスペリエンスの向上につながることを示しています。 [1].
“We practice agile development and @Capgo is mission-critical in delivering continuously to our users!”
開発を継続的に行うためにmission-criticalなツールとして@__CAPGO_KEEP_0__を使用しています! [1]
– Rodrigo Mantica
これらの洞察は、実際の改善につながることをお勧めします。
次のステップ
| これらの利点を最大限に活用するには、以下の戦略を実施することを検討してください。 | アクションアイテム |
|---|---|
| 利点 | iOSとAndroidのニーズに自動調整 |
| ライブ更新を実装 | 急な修正のためにアプリストアの遅延を回避 |
| 分析設定 | 各プラットフォームのパフォーマンスメトリクスを追跡 |
| ロールバックサポートを有効 | プラットフォーム固有の問題を迅速に解決 |
Capgoのようなツールを使用することで、開発者はワークフローを改善することを目指すことができ、ツールの設定が簡素化されます。エンドツーエンド暗号化やCI/CD統合などの機能により、チームは一貫性を維持しながら効率的に更新を展開できます。
プラットフォーム管理の成功は、適切なツールを使用し、プラットフォーム固有のガイドラインに従うことによって達成されます。強力な検出と管理戦略に焦点を当てると、開発者はiOSとAndroid両方でアプリが平滑に動作することを保証できます。