Error in Adding the In-app Billing Library

25,415

Solution 1

right click on the head of the project and create a new PACKAGE ... call the package com.android.vending.billing ....drop the aidl file in there to quiet the error.

Some food for thought: for those with an interest - when using someone's aidl file, the package name for both apps must be the same. google used com.android.vending.billing as their package name for their billing aidl interface, so you MUST also use the same package name in your app. This is the rule when using aidl.

Solution 2

For android studio users, this should be the structure:

enter image description here

Worked for me, according to this answer.

Solution 3

The structure that @David mentioned works fine in Android Studio 1.2.

Your path for the billing folder should look like:

[YOUR_APP_FOLDER]/app/src/main/aidl/com/android/vending/billing/IInAppBillingService.aidl

This is where you can check the IInAppBillingService.java generated file:

[YOUR_APP_FOLDER]/app/build/generated/source/aidl/debug/com/android/vending/IInAppBillingService.java

Good luck !

Solution 4

In the /src directory, click File > New > Package, then create a package named com.android.vending.billing

Copy the IInAppBillingService.aidl file from /extras/google/play_billing/ and paste it into the src/com.android.vending.billing/ folder in your workspace.

Build your application. You should see a generated file named IInAppBillingService.java in the /gen directory of your project.

Solution 5

The other suggestions are good. Sometimes eclipse may just be weird though, and a project clean can fix it in this case.

Share:
25,415
Admin
Author by

Admin

Updated on July 10, 2022

Comments

  • Admin
    Admin almost 2 years

    I was doing this following these steps as mentioned in the link.

    1. Copy the IInAppBillingService.aidl file to your Android project. (1) If you are using Eclipse: Import the IInAppBillingService.aidl file into your /src directory. (2) If you are developing in a non-Eclipse environment: Create the following directory /src/com/android/vending/billing and copy the IInAppBillingService.aidl file into this directory.
    2. Build your application. You should see a generated file named IInAppBillingService.java in the /gen directory of your project.
    3. Add the helper classes from the /util directory of the TrivialDrive sample to your project. Remember to change the package name declarations in those files accordingly so that your project compiles correctly.

    But when I finished that, Eclipse gives me an error:

    interface IInAppBillingService should be declared in a file called com\android\vending\billing\IInAppBillingService.aidl.
    

    the aidl file is in the correct directory, but the IInAppBillingService.java file was not generated.

    Has anybody seen that before?

  • Totalys
    Totalys about 10 years
    I don't understand why people@google(android) spread information just like this and do not concentrate everything linked at one page or group of page. Here is where they put all detailed explanation about your issue @j2emanue Detailed google play billing explanations
  • Stefan Kendall
    Stefan Kendall over 9 years
    I had no typo, but deleting the package and pasting this exactly worked.
  • Hamzah Malik
    Hamzah Malik about 7 years
    this worked for me, but i found it easier to do via Windows Explorer / Mac Finder than via Studio
  • Francisco Castro
    Francisco Castro almost 7 years
    this worked if not just clean the project and do the import (alt + enter)
  • Dmitry
    Dmitry over 5 years
    This answer plus cleaning project helped me.