Tauri Plugin PLIAP
A Tauri plugin for handling in-app purchases and subscriptions across desktop and mobile platforms.
Features
- ✅ Cross-platform support: Desktop (Windows, macOS, Linux) and Mobile (Android, iOS)
- ✅ In-app purchases: One-time purchases with Google Play Billing and App Store
- ✅ Subscriptions: Recurring subscriptions with multiple base plans
- ✅ Product management: Query product information and pricing
- ✅ Purchase tracking: Get all user purchases and consumption status
- ✅ TypeScript support: Full type definitions for the JavaScript API
Platform Support
| Platform | Status | Notes |
|---|---|---|
| Android | ✅ Full | Google Play Billing v6 |
ℹ️ Hiện tại plugin chỉ hỗ trợ Android. Hỗ trợ iOS và Desktop sẽ được cập nhật trong tương lai.
Installation
Rust (Cargo.toml)
[]
= "1.0.4"
JavaScript/TypeScript
# or
# or
Quick Start
1. Register the plugin
// src-tauri/src/main.rs
2. Configure permissions
// src-tauri/capabilities/default.json
3. Use in your app
import { createPurchase, getProduct } from "tauri-plugin-pliap";
// Create a purchase
const success = await createPurchase("product_id_123");
// Get product info
const product = await getProduct("product_id_123");
console.log("Product:", product.title, "Price:", product.price);
API Reference
Core Functions
ping(value: string)- Test plugin connectioncreatePurchase(productId: string)- Create one-time purchasecreatePurchaseSubscription(options)- Create subscriptionconsume(purchaseToken: string)- Consume a purchasegetProduct(productId: string)- Get product informationgetAllPurchases()- Get all user purchasesgetSubscription(productId: string)- Get subscription infogetListSubscription(productIds: string[])- Get multiple subscriptions
Key Types
interface BillingProduct {
productId: string;
title: string;
description: string;
price: string;
productType: string;
}
interface SubscriptionPurchaseResponse {
success: boolean;
purchaseToken?: string;
orderId?: string;
isAutoRenewing?: boolean;
}
Platform Setup
Android
Add to AndroidManifest.xml:
iOS
Ensure your app has:
- Valid App Store Connect configuration
- Product IDs configured in App Store Connect
- Proper code signing and provisioning profiles
Examples
See the examples/tauri-app directory for a complete working example.
Contributing
Contributions are welcome! Please read our Contributing Guide before submitting a pull request.
License
MIT License - see LICENSE file for details.
Support
- 📖 Documentation
- 🐛 Issues
- 💬 Discussions