Skip to content
MOVED to xamarin/XamarinComponents
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ExpansionDownloader-Gingerbread
ExpansionDownloader.Sample-Gingerbread
ExpansionDownloader.Sample
ExpansionDownloader
LicenseVerificationLibrary.Sample
LicenseVerificationLibrary.Tests
LicenseVerificationLibrary
NuGet
Resources
SuperSimpleSpansions
System.IO.Compression.Zip
.gitattributes
.gitignore
AndroidPlayExpansionLibrary.sln
AndroidPlayExpansionLibrary.sln.DotSettings
AssemblyInfo.Common.cs
ResharperCodeStyle.xml
ResharperSettings.DotSettings
readme.mdown

readme.mdown

Deprecation

This library is deprecated moving forward. New packages have been uploaded that are no longer a C# port of the library, but a direct binding of the Java code:

There are several breaking changes, although the API is fairly similar - mostly namespace/type changes. All the changes are documented here, along with their replacements:

https://github.com/xamarin/XamarinComponents/blob/master/Android/GoogleAndroidVending/docs/API-Changes.md

More detailed docs can be found here:

https://github.com/xamarin/XamarinComponents/tree/master/Android/GoogleAndroidVending/docs

The new library is located here:

https://github.com/xamarin/XamarinComponents/tree/master/Android/GoogleAndroidVending


About this project

This is the C# implementation of Google's License Verification Library (r2) and the Android Play Expansion Library (r3)

The downloader currently, correctly, notices that it is on mobile data and asks the user to make a decision on to wait for wifi or use mobile.

For your app

There are no dependencies other than the included projects. There should be two:

  • the LicenseVerificationLibrary (which requires nothing)
  • the ExpansionDownloader (which requires the LVL).

No jars and no resources are needed.

What you do need to add is the required permissions. Either in the manifest:

<uses-permission android:name="com.android.vending.CHECK_LICENSE">

or as an assembly attribute:

[assembly: UsesPermission("com.android.vending.CHECK_LICENSE")]

You can even use the LVL without the Downloader for pure licensing purposes. The other projects are either:

  • Samples (to test using one of my accounts on Play, which you can change)
  • Tests (Unit Tests?).

For you

This is most of the work done and it just needs cleaning and refactoring. I also then want to make it friendlier towards .NET developers and using the C#/.NET types instead of the Java types.

I suppose the most important thing to note is that this is an almost direct translation of the Java code. This is not really bad, but some things could have been done better/differently in C#. eg: The IPCs could be better implemented, but I haven't gotten around to that yet.

Your contributions

The ToDo list is sort of the open issues part on GitHub. Please feel free to add any new issues as new things come up. Or any suggestions for improvements.

License

This code is released under the Apache 2.0 License. http://www.apache.org/licenses/LICENSE-2.0.html

You can’t perform that action at this time.