Currently our small team doesn't have enough time to support and develop the project. I hope in the nearest future we will continue the work. Thank you!
OPFIab is a next step from OpenIAB. It's an Android library intended to make in-app billing integration easy while supporting multiple billing providers (Appstores).
Library is designed to be extensible and cosists of separate modules.
Add core dependency:
dependencies {
compile 'de.greenrobot:eventbus:2.4.0'
compile 'org.onepf:opfutils:x.x.x'
compile 'org.onepf:opfiab:x.x.x@aar'
}
Or grab our latest release.
You'll also whant to add one or few BillingProvider
modules. Check supported providers for details.
Full documentaion is available on our wiki.
####How is this library different from OpenIAB? Why should I bother migrating?
OPFIab is an attempt to implement universal, extensible billing library that OpenIAB should've been from the start.
Unfortunately OpenIAB has some fundamental flaws.
It carries heavy burden of legacy architecture from Google's IabHelper it was initially based on. It adopted unfinished concept of OpenStores and encapsulated a lot of different app stores in one bundle which made it really difficult to maintain.
Most notable advantages for using OPFIab:
- Modular architecture One appstore - one module. Use only modules you need. It's easy to extend existing modules and change their behaviour if you need to.
- Straightforward library configuration It should only be setup once and preferably from
Application#onCreate
since this is the only code guaranteed to be executed if app was started fromBroadcastReceiver
. - Simple listeners API Library offers one global listener to handle all billing events which is useful to save persistent changes (DataBase, SharedPreferences etc.) as well as dynamic listeners intended to simplify UI updates.
- Overall better quality code with more android-friendly architecture and less concurrency pitfalls.
Copyright 2012-2015 One Platform Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.