RORK LABEN
PLAY — Google Play の target API level 36 要件が昨日8月31日に発効しました。今日以降、新規アプリと既存アプリの更新は Android 16 対応が必須ですVISIBILITY — API 35 のままのアプリは掲載こそ続きますが、新しい Android 版のユーザーには表示されなくなります。エラーが出ないまま新規インストールだけが減る点に注意が要りますEXTENSION — 間に合わなかった場合は、Play Console から2026年11月1日までの延長申請が出せます。恒久対応の計画とセットで進めるのが実務的ですAPPLE — Apple 側は9月9日にイベント、iOS 27 の正式リリースは9月14日と報じられています。生成したアプリの iOS 27 実機確認はリリース週の前に済ませておきたいところですEXPO — Expo が expo-paste-input を公開しました(8月28日)。React Native の TextInput に画像・GIF・ステッカーの貼り付けを追加するネイティブモジュールですEAS — EAS Observe が8月20日に GA になりました。クラッシュや性能の観測を、ビルドや配信と同じ EAS 上で持てるようになっていますPLAY — Google Play の target API level 36 要件が昨日8月31日に発効しました。今日以降、新規アプリと既存アプリの更新は Android 16 対応が必須ですVISIBILITY — API 35 のままのアプリは掲載こそ続きますが、新しい Android 版のユーザーには表示されなくなります。エラーが出ないまま新規インストールだけが減る点に注意が要りますEXTENSION — 間に合わなかった場合は、Play Console から2026年11月1日までの延長申請が出せます。恒久対応の計画とセットで進めるのが実務的ですAPPLE — Apple 側は9月9日にイベント、iOS 27 の正式リリースは9月14日と報じられています。生成したアプリの iOS 27 実機確認はリリース週の前に済ませておきたいところですEXPO — Expo が expo-paste-input を公開しました(8月28日)。React Native の TextInput に画像・GIF・ステッカーの貼り付けを追加するネイティブモジュールですEAS — EAS Observe が8月20日に GA になりました。クラッシュや性能の観測を、ビルドや配信と同じ EAS 上で持てるようになっています
記事一覧/アプリ開発
アプリ開発/2026-04-11中級

Gemma 4をアプリ開発に活かす:オンデバイスAIの最前線

Googleが2026年4月にリリースしたGemma 4のE2B/E4Bモデルを使って、iOSやAndroidアプリにオンデバイスAIを組み込む方法を解説。プライバシー・オフライン動作・低レイテンシを実現する実践ガイドです。

Gemma 42アプリ開発76オンデバイスAI13iOS109Android47Rork547モバイルAI3

2026年4月2日にGoogleがリリースしたGemma 4は、モバイルアプリ開発者に新しい可能性を開いています。特にE2B(Effective 2B)とE4B(Effective 4B)は、スマートフォンに組み込むことを意識して設計された軽量モデルで、テキスト・画像・音声のマルチモーダル処理をデバイス上で直接実行できます。

オンデバイスAIのメリット

クラウドAPIではなくデバイス上でAIを動かすことには、大きな利点があります。

プライバシーの保護がまず挙げられます。ユーザーのデータがサーバーに送信されないため、個人情報・医療情報・ビジネス機密を扱うアプリでも安心して利用できます。GDPRや個人情報保護法などの規制対応にも有利です。

オフライン動作も大きな強みです。機内モードや地下など通信環境の悪い場所でも、AIの機能をフル活用できます。ユーザー体験の一貫性が保たれます。

低レイテンシも重要です。ネットワークのラウンドトリップがないため、AIの応答が即座に返ってきます。リアルタイムの音声処理や画像解析など、遅延に敏感なユースケースで特に効果的です。

コスト削減も見逃せません。API使用量に応じた従量課金がなくなるため、大規模なユーザーベースを持つアプリでは長期的なコスト面で有利になります。

Gemma 4 E2B / E4Bの仕様

Gemma 4のエッジモデルは以下の仕様を持っています。

E2Bはモデルサイズが2B(20億)パラメータ相当で、モバイルデバイスに最適化された軽量設計です。E4Bは4B(40億)パラメータ相当で、E2Bより高い精度が必要なケースに対応します。両モデルともコンテキストウィンドウは128,000トークンで、入力モダリティはテキスト・画像・動画・音声に対応しています。対応言語は140以上です。

iOSアプリへの統合

iOSアプリにGemma 4を組み込む主な方法は二つあります。

MediaPipe経由での組み込み

GoogleのMediaPipeフレームワークを使うと、LLMをiOSアプリに比較的簡単に統合できます。

import MediaPipeTasksGenAI
 
// LLMInferenceの初期化
// gemma-4-e2b-it.task ファイルを事前にバンドルしておく必要があります
guard let modelPath = Bundle.main.path(forResource: "gemma-4-e2b-it", ofType: "task") else {
    print("モデルファイルが見つかりません")
    return
}
 
let options = LlmInference.Options(modelPath: modelPath)
options.maxTokens = 1024
options.temperature = 0.7
 
do {
    let llmInference = try LlmInference(options: options)
    
    // テキスト生成の例
    let response = try llmInference.generateResponse(
        inputText: "このレシートの金額を合計してください:\(receiptText)"
    )
    print(response)
} catch {
    print("エラー: \(error)")
}

Core ML経由での最適化

Apple Siliconチップに最適化されたCore MLフォーマットに変換することで、さらに高速な推論が可能です。

# Pythonスクリプト:Gemma 4をCore MLに変換(前処理)
import coremltools as ct
from transformers import AutoModelForCausalLM, AutoTokenizer
 
# HuggingFaceからモデルをロード
model_id = "google/gemma-4-e2b-it"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id)
 
# Core MLに変換
traced_model = ct.convert(
    model,
    inputs=[ct.TensorType(shape=(1, 512))],
    compute_units=ct.ComputeUnit.ALL  # Neural Engineを活用
)
traced_model.save("gemma4_e2b.mlpackage")

Androidアプリへの統合

Androidでは、MediaPipeの他にLiteRTを使ったアプローチが有効です。

// Android Studio でのGemma 4統合例(Kotlin)
import com.google.mediapipe.tasks.genai.llminference.LlmInference
import com.google.mediapipe.tasks.genai.llminference.LlmInferenceOptions
 
class GemmaManager(private val context: Context) {
    
    private lateinit var llmInference: LlmInference
    
    fun initialize() {
        val modelPath = "${context.filesDir}/gemma-4-e2b-it.task"
        
        val options = LlmInferenceOptions.builder()
            .setModelPath(modelPath)
            .setMaxTokens(1024)
            .setTemperature(0.7f)
            .build()
        
        llmInference = LlmInference.createFromOptions(context, options)
    }
    
    // 非同期でテキスト生成
    suspend fun generateText(prompt: String): String {
        return withContext(Dispatchers.IO) {
            llmInference.generateResponse(prompt)
        }
    }
    
    // 画像を含むマルチモーダル入力
    suspend fun analyzeImage(bitmap: Bitmap, question: String): String {
        return withContext(Dispatchers.IO) {
            // MediaPipe Image を作成
            val mpImage = BitmapImageBuilder(bitmap).build()
            llmInference.generateResponse(question, listOf(mpImage))
        }
    }
    
    fun release() {
        llmInference.close()
    }
}

Rorkでの活用シナリオ

Rorkを使ってアプリを開発している場合、Gemma 4のAPIと連携することで強力なAI機能を実装できます。

// Rork + Gemma 4 APIの連携例(React Native / Expo)
// ローカルサーバー(LM Studio)経由でGemma 4を呼び出す
 
const callGemma4 = async (prompt, imageBase64 = null) => {
  const messages = [
    {
      role: "user",
      content: imageBase64
        ? [
            {
              type: "image_url",
              image_url: { url: `data:image/jpeg;base64,${imageBase64}` }
            },
            { type: "text", text: prompt }
          ]
        : prompt
    }
  ];
 
  const response = await fetch("http://localhost:1234/v1/chat/completions", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      model: "gemma-4-e4b",
      messages,
      temperature: 0.7,
      max_tokens: 512
    })
  });
 
  const data = await response.json();
  return data.choices[0].message.content;
};
 
// 使用例:カメラで撮影した商品の説明を生成
const analyzeProduct = async (cameraPhoto) => {
  const base64Image = await photoToBase64(cameraPhoto);
  const description = await callGemma4(
    "この商品について日本語で簡単に説明してください",
    base64Image
  );
  return description;
};

実用的なユースケース

Gemma 4をモバイルアプリに組み込むことで実現できる具体的な機能をいくつか挙げます。

リアルタイム翻訳: カメラで看板や文書を撮影すると、Gemma 4がOCRと翻訳を同時に行います。オフラインでも動作するため、海外旅行での実用性が高いです。

音声メモのAI整理: 音声入力(E2B/E4Bの機能)で録音したメモを自動的に要約・分類します。ネットワーク環境に依存しないため、電波の届かない場所でも使えます。

医療・ヘルスケアアプリ: 食事の写真を撮ると栄養情報を推定したり、症状を入力すると一般的な情報を提供したりする機能を、プライバシーを守りながら実現できます(ただし医療判断の代替ではありません)。

ビジネス文書処理: 名刺や領収書の写真からデータを抽出し、CRMや経費精算システムに自動入力する機能を、クラウドに送信せずに実現できます。

全体を振り返って

Gemma 4のE2B/E4Bは、これまでクラウドAPIに頼るしかなかったAI機能をデバイス上で実現する新しい道を切り開いています。Apache 2.0ライセンスで商用利用でき、プライバシー・オフライン動作・低レイテンシという三拍子揃ったオンデバイスAIは、モバイルアプリ開発者にとって非常に魅力的な選択肢です。

Rorkと組み合わせることで、AIを核心に据えた新しいアプリ体験を素早くプロトタイプできます。ぜひGemma 4を活かしたアプリ開発に挑戦してみてください。

シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥2,480 の永久アクセス
メンバーシップを見る →

もしこの記事がお役に立ちましたら、チップ(¥150)で応援いただけると大変励みになります。広告なしでの運営を続けるため、皆さまのご支援が大きな力になっています。

関連記事

Rork 入門2026-04-08
【プレミアム見本】Rork完全入門ガイド:プログラミング不要でiOS・Androidアプリを作る全手順
プログラミング不要でiOS・Androidアプリを作るRorkの入門ガイドを、プレミアム品質の見本として無料公開します。他のノーコードツールとの違い、開発サイクル、バックエンドとデータ管理、ストア公開、収益化までを一冊分の構成で解説します。最初の10分の始め方も具体的に示します。
開発ツール2026-04-02
Rork アプリにネイティブ共有機能を追加する — Share Sheet 実装ガイド
RorkアプリにネイティブのShare Sheetを実装する入門です。expo-sharingとreact-native-shareの選び方、テキスト・URL・画像それぞれのシェア実装、よくあるエラーの対処、シェアイベントのトラッキングまで実際のコードで丁寧に解説します。
アプリ開発2026-08-18
Rork のプロジェクトで targetSdkVersion 36 を通すまでに直した3か所
app.json に targetSdkVersion 36 と書いてあるのに、ビルドが読んでいた値は 35 でした。実効値を報告するスクリプトと、引き上げ・更新停止・延長申請の三択の分け方を残します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →