0Pricing
Indie Hacker Mobile Apps · 课时

应用内购买与订阅

通过应用商店 API 集成一次性内容的应用内购买,并设置周期性订阅。

应用内购买与订阅 是 CoddyKit 上的免费 Indie Hacker Mobile Apps 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Indie Hacker Mobile Apps 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Indie Hacker Mobile Apps 课程共包含 4 节课。

本课时的部分内容尚未翻译,以英文显示。

Monetizing with IAPs & Subscriptions

Welcome to monetizing your mobile app! As an indie hacker, generating revenue is key to sustainability. This lesson introduces In-App Purchases (IAPs) and Subscriptions.

These are ways for users to buy digital goods, services, or access within your app, directly through the app stores.

One-Time Purchases: Consumable

IAPs come in a few forms. First, Consumable IAPs are items that can be used up and purchased again. Think of them like digital currency or power-ups.

  • Examples: Game coins, extra lives, hints, temporary boosts.
  • Once used, they are gone and the user can buy more.
  • These are often critical for 'freemium' game monetization.

One-Time Purchases: Non-Consumable

Next are Non-Consumable IAPs. These grant permanent access to content or features after a single purchase. They don't expire or get used up.

  • Examples: Removing ads, unlocking premium features, full game versions, digital books.
  • Users buy them once and own them forever.
  • These purchases should be restorable if a user reinstalls your app or gets a new device.

Recurring Revenue: Subscriptions

Auto-Renewable Subscriptions are a powerful monetization model for ongoing access to content or services. Users are automatically charged on a recurring basis (e.g., monthly, yearly).

  • Examples: Premium content in a news app, ad-free access to a streaming service, advanced features in a productivity app.
  • They continue until the user cancels them.
  • Many apps offer free trials to attract subscribers.

The IAP Integration Flow

Regardless of the type, the basic flow for integrating IAPs and Subscriptions is similar:

  1. Define Products: Set up your IAPs in App Store Connect / Google Play Console.
  2. Display Products: Show product details (price, description) in your app.
  3. Initiate Purchase: User taps 'Buy', your app requests the purchase.
  4. Process Payment: App store handles payment and authentication.
  5. Grant Access: Your app receives confirmation and unlocks content.

Setting Up Products (Conceptual)

Before writing any code, you define your IAPs and subscriptions in the respective app store consoles. This involves:

  • Creating unique Product IDs (e.g., com.myapp.premium_feature).
  • Setting up names, descriptions, and pricing.
  • For subscriptions, defining durations (monthly, yearly) and optional free trials.

These IDs are what your app will use to reference each specific product.

Initiating a Purchase Request

When a user decides to buy, your app communicates with the platform's billing API (e.g., StoreKit on iOS, Google Play Billing Library on Android).

Here's a simplified pseudo-code of how a purchase might be initiated:

/* Pseudo-code for a purchase request */

// Imagine the user tapped a 'Buy Premium' button

function startPurchase(productId) {
  console.log(`User wants to buy: ${productId}`);

  // 1. Request product details from the App Store API
  //    (This step often happens earlier to display prices)
  const product = AppStoreAPI.getProductDetails(productId);

  if (product) {
    // 2. Initiate the purchase flow for this product
    //    The OS will handle the payment UI (Face ID/fingerprint)
    AppStoreAPI.makePayment(product);
  } else {
    console.error("Product not found or invalid.");
  }
}

// Example call
// startPurchase("com.myindieapp.remove_ads");

Handling Transaction Outcomes

After a purchase is initiated, your app will receive a transaction update. You must handle various outcomes:

  • Purchased: The payment was successful. Grant the user access to the purchased content/feature.
  • Failed: Payment error or user cancelled. Inform the user.
  • Pending: Payment is awaiting external approval (e.g., family sharing). Wait for further updates.
  • Restored: User is re-downloading previously purchased non-consumables or subscriptions.

Server-Side Receipt Validation

For robust security and to prevent fraud, especially with subscriptions, server-side receipt validation is crucial. Your app sends the purchase receipt to your backend server.

Your server then sends this receipt to Apple/Google's verification servers. They confirm the purchase's authenticity, and your server can then securely grant access to the user.

This prevents users from tampering with local receipts to unlock features for free.

Check Your Understanding

Let's quickly check your knowledge of In-App Purchases and Subscriptions.

Recap & Next Steps

You've learned the fundamentals of monetizing with In-App Purchases and Subscriptions!

  • We covered Consumable and Non-Consumable IAPs for one-time purchases.
  • Explored Auto-Renewable Subscriptions for recurring revenue.
  • Understood the basic integration flow and the importance of server-side receipt validation for security.

Next, dive into the specific platform APIs (Apple's StoreKit or Google Play Billing Library) to implement these powerful monetization strategies in your apps!

常见问题解答

「应用内购买与订阅」课时是免费的吗?

是的 — 「应用内购买与订阅」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Indie Hacker Mobile Apps 课程的其余内容,请升级到 CoddyKit PRO。 Indie Hacker Mobile Apps 课程共包含 4 节课。

「应用内购买与订阅」这节课中我会学到什么?

通过应用商店 API 集成一次性内容的应用内购买,并设置周期性订阅。 你通过在浏览器中直接运行的动手代码来练习 Indie Hacker Mobile Apps,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Indie Hacker Mobile Apps 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Indie Hacker Mobile Apps 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「应用内购买与订阅」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Indie Hacker Mobile Apps 课中编写并运行代码吗?

能。每节 Indie Hacker Mobile Apps 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 应用内购买与订阅
  2. 移动广告集成
  3. 定价模式与实验
  4. 降低流失率并最大化用户终身价值
← 返回 Indie Hacker Mobile Apps