link に記載されているこれらの手順に従ってこれを行っていました。
IInAppBillingService.aidl
ファイルをAndroidプロジェクトにコピーします。(1)Eclipseを使用している場合:IInAppBillingService.aidl
ファイルを/ srcディレクトリにインポートします。(2) Eclipse以外の環境で開発しています:次のディレクトリ/ src/com/Android/vending/billingを作成し、IInAppBillingService.aidl
ファイルをこのディレクトリにコピーします。IInAppBillingService.Java
ディレクトリに/gen
という名前の生成されたファイルが表示されるはずです。TrivialDrive
サンプルの/util
ディレクトリからヘルパークラスをプロジェクトに追加します。プロジェクトが正しくコンパイルされるように、これらのファイルのパッケージ名宣言を適宜変更することを忘れないでください。しかし、私がそれを終えると、Eclipseはエラーを出します:
interface IInAppBillingService should be declared in a file called com\Android\vending\billing\IInAppBillingService.aidl.
aidl
ファイルは正しいディレクトリにありますが、IInAppBillingService.Java
ファイルは生成されませんでした。
誰か見たことある?
プロジェクトの先頭を右クリックして、新しいパッケージを作成します...パッケージcom.Android.vending.billingを呼び出します....そこにエイドルファイルをドロップして、エラーを抑制します。
考えてみてください:関心のある人のために-誰かのエイドルファイルを使用する場合、両方のアプリのパッケージ名は同じでなければなりません。 googleは、請求支援インターフェースのパッケージ名としてcom.Android.vending.billingを使用したため、アプリでも同じパッケージ名を使用する必要があります。これは、aidlを使用するときのルールです。
Android studioユーザーの場合、これは次の構造になります。
@ David が言及した構造は、Android Studio 1.2。
請求フォルダのパスは次のようになります。
[YOUR_APP_FOLDER]/app/src/main/aidl/com/Android/vending/billing/IInAppBillingService.aidl
ここでIInAppBillingService.Java生成ファイルを確認できます。
[YOUR_APP_FOLDER]/app/build/generated/source/aidl/debug/com/Android/vending/IInAppBillingService.Java
幸運を !
/ srcディレクトリで、[ファイル]> [新規]> [パッケージ]をクリックし、com.Android.vending.billingという名前のパッケージを作成します
/ extras/google/play_billing /からIInAppBillingService.aidlファイルをコピーし、ワークスペースのsrc/com.Android.vending.billing /フォルダーに貼り付けます。
アプリケーションをビルドします。プロジェクトの/ genディレクトリにIInAppBillingService.Javaという名前の生成されたファイルが表示されます。
他の提案は良いです。ただし、Eclipseは奇妙な場合があり、この場合はプロジェクトをクリーンアップすることで修正できます。
ファイルを/src/com/Android/vending/billing/IInAppBillingService.aidlに配置した場合、srcフォルダー内のディレクトリのスペルを再確認することが唯一のアドバイスです。
Build.gladleの依存関係の下に課金ライブラリを追加したことを確認します
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.Android.support:appcompat-v7:27.1.1'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.Android.support.test:runner:1.0.2'
androidTestImplementation 'com.Android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.Android.billingclient:billing:1.1'
}
上記のコードの最後の行を参照してください。 「com.Android.billingclient:billing:1.1」を実装すると、同じ問題が解決しました
@ j2emanueが提案したことを行い([新規/パッケージ]、[com.Android.vendor.billing]を追加)、そのディレクトリをファイルシステム(com/Android/vendor/billing)に追加し、その中にファイルをコピーしました。次に、プロジェクトの[更新]をクリックしました。ビルドして、成功しました。
2018年
app/build.gradle:
sourceSets {
main {
aidl.srcDirs = ['src/main/aidl']
}
}
または
sourceSets {
main {
aidl.srcDirs = ['src']
}
}
にとって IInAppBillingService.aidl