__CAPGO_KEEP_0__ page d'accueil
@capgo/capacitor-inappbrowser Renommé Renommé à partir de @capgo/inappbrowser vers @capgo/capacitor-inappbrowser. UI & Système Source ouvert

Navigateur Intérieur plugin Capacitor

Ouvrez des vues Web intégrées gérées avec un couchage UI natif, des sessions privées, des téléchargements, du proxyage et de la messagerie.

Installer

bun add @capgo/capacitor-inappbrowser bunx cap sync
npm, pnpm ou yarn
  • npm install @capgo/capacitor-inappbrowser
  • pnpm add @capgo/capacitor-inappbrowser
  • yarn add @capgo/capacitor-inappbrowser

Guide

Comment utiliser le navigateur In App dans Capacitor

Testez sur appareil

Téléchargez l'application Capgo, puis scannez le QR code.

Prévisualisation du plugin In App Browser QR code

En utilisant @capgo/capacitor-inappbrowser

@capgo/capacitor-inappbrowser ouvre du contenu web externe à partir d'une application Capacitor. open() pour la surface du navigateur du plateforme openWebView() when your app needs a managed native WebView with custom size, toolbar, messages, scripts, downloads, proxying, popup control, private storage, or Ionic UI layered above the page.

Install

npm install @capgo/capacitor-inappbrowser
npx cap sync

Qu'est-ce que ce Plugin Expose

  • Flux de navigateur système avec Chrome Custom Tabs sur Android et SFSafariViewController sur iOS.
  • Fenêtres Web gérées qui peuvent être dimensionnées, cachées, montrées, déplacées derrière l'application Capacitor et ramenées à l'avant.
  • Cliquez, touchez et faites glisser en avant dispatchInputEvent() Transmission de clics, de touches et de scrolls avec
  • Navigateurs à écran partiel où les clics en dehors de la fenêtre native WebView passent à l'application Capacitor sur Android et iOS.
  • Nettoyage de cookies, cache et données de navigation complètes avec persistWebViewData, clearCookies, clearAllCookies, clearCache, et clearAllBrowsingData.
  • Communication entre l'application et la page postMessage(), communication entre page et application avec window.mobileApp.postMessage(...), et injection de script avec executeScript().
  • Gestion de téléchargement, règles proxy native d'abord, contrôle de popup, support Google Pay. _blank Gestion de liens, et instances de navigateur préchargées cachées.

Utilisations courantes

Placer l'interface d'application au-dessus d'un navigateur en direct

import { InAppBrowser } from '@capgo/capacitor-inappbrowser';

const { id } = await InAppBrowser.openWebView({
  url: 'https://example.com/checkout',
  toBack: true,
  transparentBackground: true,
});

await InAppBrowser.dispatchInputEvent({
  id,
  type: 'click',
  x: 160,
  y: 420,
});

await InAppBrowser.bringToFront({ id });

Utilisez cela pour les fenêtres de paiement basées sur le navigateur, les flux de support guidés ou tout élément où les contrôles d'Ionic doivent rester au-dessus du contenu web en direct.

Keep the App Clickable Around a Browser Sheet

const { id } = await InAppBrowser.openWebView({
  url: 'https://example.com/offers',
  height: window.innerHeight - 200,
  y: 0,
});

await InAppBrowser.updateDimensions({ id, height: window.innerHeight });

Un navigateur personnalisé ne capte que les touches à l'intérieur de son cadre. L'aire visible de l'application reste cliquable sur Android et iOS.

Évitez les Sessions Web Persistantes

const { id } = await InAppBrowser.openWebView({
  url: 'https://example.com/login',
  persistWebViewData: false,
});

await InAppBrowser.clearAllBrowsingData();
await InAppBrowser.close({ id });

Utilisez cela pour le basculement de compte, les tests de paiement, l'impersonation du support ou les flux d'authentification où les cookies, la cache, le stockage local et IndexedDB ne doivent pas survivre plus longtemps que nécessaire.

Précharger et Échanger Plusieurs Vues Web

const first = await InAppBrowser.openWebView({ url: 'https://example.com/a', hidden: true });
const second = await InAppBrowser.openWebView({ url: 'https://example.com/b', hidden: true });

await InAppBrowser.show({ id: first.id });
await InAppBrowser.hide({ id: first.id });
await InAppBrowser.show({ id: second.id });

Instances cachées conservent leur état disponible tout en évitant les surimpressions natives qui bloquent les touches de l'application.

Intégrer une Application Web Avancée

const { id } = await InAppBrowser.openWebView({
  url: 'https://example.com/portal',
  handleDownloads: true,
  openBlankTargetInWebView: true,
  hiddenPopupWindow: true,
  outboundProxyRules: [
    {
      urlRegex: '^https://example\\.com/api/',
      action: 'delegateToJs',
    },
  ],
});

await InAppBrowser.postMessage({
  id,
  detail: { source: 'app', action: 'refresh' },
});

Utilisez ce modèle pour les portails de documents, les flux de téléchargement, les bureaux d'assistance, les appels vidéo, les pages Google Pay ou les applications web interactives qui nécessitent un contrôle d'application native sans quitter la coquille de l'application.

Référence Complète

Continuez à partir de l'utilisation de @capgo/capacitor-inappbrowser

Si vous utilisez En utilisant @capgo/capacitor-inappbrowser pour planifier le travail du plugin natif, le connecter avec à @capgo/capacitor-inappbrowser pour les détails d'implémentation dans @capgo/capacitor-inappbrowser Getting Started pour les détails d'implémentation dans Démarrage Répertoire des plugins Capgo pour le flux de travail du produit dans Répertoire des plugins Capgo Plugins Capacitor par Capgo pour les détails d'implémentation dans Plugins Capacitor par Capgo, et Ajouter ou Mettre à jour les plugins pour les détails d'implémentation dans Ajouter ou Mettre à jour les plugins.

FAQ

Foire aux questions du plugin de navigateur intégré

Comment installer le plugin In App Browser dans une application Capacitor?

Exécutez la commande « bun add @capgo/capacitor-inappbrowser » (ou « npm install @capgo/capacitor-inappbrowser »), puis exécutez la commande « bunx cap sync » afin que les projets iOS et Android prennent en compte le code natif. Importez-l’à partir de « @capgo/capacitor-inappbrowser » dans votre application code.

Fonctionne-t-il @capgo/capacitor-inappbrowser avec React, Vue et Angular ?

Oui. L'application en arrière-plan est un Capacitor package, elle fonctionne donc avec n'importe quel framework web qui s'exécute à l'intérieur de Capacitor, y compris Ionic, React, Vue, Angular, Svelte et JavaScript pur.

Quelle version de Capacitor est prise en charge par @capgo/capacitor-inappbrowser ?

Capgo plugins suivent la version majeure de Capacitor : utilisez la version majeure du plugin qui correspond à votre version majeure de Capacitor (par exemple, plugin v8 avec Capacitor 8). La table de compatibilité dans le README de GitHub liste les versions maintenues.

Est-ce que @capgo/capacitor-inappbrowser est gratuit et open source ?

Oui. Le code source de code est public sur GitHub à https://github.com/Cap-go/capacitor-inappbrowser/ et le package est gratuit pour l'installer depuis npm. Les rapports de bogues et les demandes de tirage sont les bienvenus.

Puis-je mettre à jour code qui utilise In App Browser sans passer par une revue de l'App Store ?

L'installation ou la mise à niveau du plugin modifie la code native, elle nécessite donc une nouvelle construction de l'application. Une fois cela fait, les modifications JavaScript, HTML et CSS qui appellent le plugin peuvent être envoyées instantanément avec les mises à jour Capgo.

Ship In App Browser changes without waiting for app review

Once the plugin is in your store build, Capgo live updates push your JavaScript, HTML and CSS changes to users in minutes.

Commencez avec Capgo