{"id":26086894,"url":"https://github.com/pspdfkit/xamarin-android","last_synced_at":"2025-04-12T03:23:21.042Z","repository":{"id":49357058,"uuid":"47800522","full_name":"PSPDFKit/Xamarin-Android","owner":"PSPDFKit","description":"PSPDFKit for Android wrapper for the Xamarin platform.","archived":false,"fork":false,"pushed_at":"2024-10-29T08:05:45.000Z","size":11918,"stargazers_count":19,"open_issues_count":1,"forks_count":10,"subscribers_count":24,"default_branch":"master","last_synced_at":"2024-10-29T09:23:28.892Z","etag":null,"topics":["android-bindings","bindings","pdf","pspdfkit","sdk","wrapper","xamarin","xamarin-android","xamarin-pspdfkit"],"latest_commit_sha":null,"homepage":"https://pspdfkit.com/guides/android/current/other-languages/xamarin/","language":"C#","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PSPDFKit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-12-11T02:38:25.000Z","updated_at":"2024-10-29T08:05:49.000Z","dependencies_parsed_at":"2025-03-09T07:33:00.740Z","dependency_job_id":null,"html_url":"https://github.com/PSPDFKit/Xamarin-Android","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PSPDFKit%2FXamarin-Android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PSPDFKit%2FXamarin-Android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PSPDFKit%2FXamarin-Android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PSPDFKit%2FXamarin-Android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PSPDFKit","download_url":"https://codeload.github.com/PSPDFKit/Xamarin-Android/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248510813,"owners_count":21116282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android-bindings","bindings","pdf","pspdfkit","sdk","wrapper","xamarin","xamarin-android","xamarin-pspdfkit"],"created_at":"2025-03-09T07:18:49.485Z","updated_at":"2025-04-12T03:23:21.014Z","avatar_url":"https://github.com/PSPDFKit.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Xamarin PSPDFKit.Android Bindings\n\nXamarin.Android Bindings for PSPDFKit `v8.7.3`.\n\n\u003e [!NOTE]\n\u003e Nutrient Xamarin SDK (formerly PSPDFKit Xamarin for iOS and PSPDFKit Xamarin for Android) is being sunset and replaced by \u003ca href='https://www.nutrient.io/guides/ios/dotnet/'\u003eNutrient .NET for iOS\u003c/a\u003e and \u003ca href='https://www.nutrient.io/guides/android/dotnet/'\u003eNutrient .NET for Android\u003c/a\u003e. All Nutrient Xamarin licenses will remain valid and fully supported until 1 December 2025, or until your license expires, whichever occurs later. Interested in transitioning to another Nutrient product? \u003ca href='https://www.nutrient.io/company/contact'\u003eContact us\u003c/a\u003e and we’ll be happy to help.\u003c/blockquote\u003e\n\n\n#### PSPDFKit\n\nThe [PSPDFKit SDK](https://pspdfkit.com/) is a framework that allows you to view, annotate, sign, and fill PDF forms on iOS, Android, Windows, macOS, and Web.\n\n[PSPDFKit Instant](https://pspdfkit.com/instant) adds real-time collaboration features to seamlessly share, edit, and annotate PDF documents.\n\n#### Related\n\n- Xamarin.iOS Bindings for PSPDFKit for iOS: [PSPDFKit/Xamarin-iOS](https://github.com/PSPDFKit/Xamarin-iOS)\n- Xamarin Bindings for PSPDFKit for Windows UWP: [PSPDFKit/Xamarin-UWP](https://github.com/PSPDFKit/Xamarin-UWP)\n\n## Support, Issues and License Questions\n\nPSPDFKit offers support for customers with an active SDK license via https://pspdfkit.com/support/request/\n\nAre you evaluating our SDK? That's great, we're happy to help out!\nTo make sure this is fast, please use a work email and have someone from your company fill out our sales form: https://pspdfkit.com/sales/\n\n## Requirements\n\nPSPDFKit runs on Android devices running:\n\n* **Xamarin.Android \u003e= 13.0.0.0**\n* **Microsoft Mobile OpenJDK \u003e= 11.0**\n* Android **4.4** or newer / API level **19** or higher\n* 32/64-bit ARM (armeabi-v7a with NEON/ arm64-v8a) or 32/64-bit Intel x86 CPU.\n* Projects using PSPDFKit.Android.dll **must** set [Target Framework](https://developer.xamarin.com/guides/android/application_fundamentals/understanding_android_api_levels/#framework) to **API 31 (Android 12.0)** or higher.\n\n## Integrating PSPDFKit\n\nThere's 2 ways to integrate PSPDFKit into your project. We highly recommend using our nuget packages from nuget.org in Visual Studio as it requires less work for the customer and also eliminates the possibility of build errors, which can happen from time to time.\n\n### Integrating PSPDFKit via Nuget (Recommended)\n\n1. Right-Click on your project in Visual Studio and select \"Manage Nuget Packages…\"\n2. In the `Browse` section for \"nuget.org\" search for \"PSPDFKit\"\n\u003cimg width=\"500\" src=\"https://user-images.githubusercontent.com/21023299/75026406-38564d00-549d-11ea-8229-34f91362f3d7.png\"\u003e \n\n3. Select the `PSPDFKit.Android` package.\n4.  Tap on \"Add Package\" to add the nuget package to your project.\n\nNow you are done and can skip to [Adding additional resources!](https://github.com/PSPDFKit/Xamarin-Android#adding-additional-resources)\n\n### Integrating PSPDFKit via DLLs (Advanced)\n\n#### Step 1 - Get PSPDFKit .aar File\n\nRun `./build.sh` (on macOS) or `./build.ps1` (on Windows, PowerShell) command from root directory. This will download all the required resources needed by the binding. Note that running this will require you to have [Xamarin](https://www.xamarin.com/platform) already installed on your computer.\n\n**💡 Note:** Ensure the files are really named `pspdfkit-x.x.x.aar` so there is no hidden `.zip` file ending. OS X likes to add these things and doesn't show them by default. Use the Inspector to be sure.\n\nVisual Studio will use the default Java, but this can be customized in Preferences -\u003e SDK Locations -\u003e Java SDK (JDK).\n\n#### Step 2 - Get your Dlls\n\nYou have two options to get it:\n\n#### Build from PSPDFKit.Android.sln\n\n1. Open `PSPDFKit.Android.sln` in `Visual Studio`.\n2. Build the project.\n3. Get the dll from the `PSPDFKit.Android/bin` folder.\n4. Enjoy.\n\n#### Build from Terminal\n\n1. Just grab `PSPDFKit.Android.dll` from the root folder, if you successfuly followed **Step 1** it should be there.\n2. Enjoy.\n\n#### Integrating the dlls into your own Project\n\nIn order to use **PSPDFKit.Android.dll** with your own project you will need to add the dll as a reference to your project. You can achieve this by doing the following:\n\n1. Right click in your **References** folder from your project and select **Edit References...**\n2. Select **.Net Assembly** tab and click **Browse**\n3. Locate your **PSPDFKit.Android.dll** copy and add it.\n\n### Adding additional resources\n\nFirst you need to add the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file to your project, see [Xamarin Android and ProGuard](#xamarin-android-and-proguard) section.\n\n**💡 Note:** If you do not add the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file to your project you will run into errors\n\nOnce you have done this you will need to add some [NuGet](https://www.nuget.org/) packages to you project\n\n* [Xamarin.AndroidX.Legacy.Support.V4](https://www.nuget.org/packages/Xamarin.AndroidX.Legacy.Support.V4)\n* [Xamarin.AndroidX.AppCompat](https://www.nuget.org/packages/Xamarin.AndroidX.AppCompat)\n* [Xamarin.AndroidX.RecyclerView](https://www.nuget.org/packages/Xamarin.AndroidX.RecyclerView)\n* [Xamarin.AndroidX.CardView](https://www.nuget.org/packages/Xamarin.AndroidX.CardView)\n* [Xamarin.AndroidX.GridLayout](https://www.nuget.org/packages/Xamarin.AndroidX.GridLayout)\n* [Xamarin.AndroidX.Palette](https://www.nuget.org/packages/Xamarin.AndroidX.Palette)\n* [Xamarin.AndroidX.MultiDex](https://www.nuget.org/packages/Xamarin.AndroidX.MultiDex)\n* [Xamarin.AndroidX.Lifecycle.LiveData](https://www.nuget.org/packages/Xamarin.AndroidX.Lifecycle.LiveData)\n* [Xamarin.AndroidX.Browser](https://www.nuget.org/packages/Xamarin.AndroidX.Browser)\n* [Xamarin.Google.Android.Material](https://www.nuget.org/packages/Xamarin.Google.Android.Material)\n* [Square.OkHttp3](https://www.nuget.org/packages/Square.OkHttp3)\n* [Xamarin.Kotlin.StdLib](https://www.nuget.org/packages/Xamarin.Kotlin.StdLib)\n* [Xamarin.Android.ReactiveX.RxJava3.RxAndroid](https://www.nuget.org/packages/Xamarin.Android.ReactiveX.RxJava3.RxAndroid)\n* [Xamarin.Android.ReactiveX.RxJava3.RxJava](https://www.nuget.org/packages/Xamarin.Android.ReactiveX.RxJava3.RxJava)\n\nIf you need to know how to add NuGet packages to your Xamarin project please refer to [Walkthrough: Including a NuGet in your project](http://developer.xamarin.com/guides/cross-platform/application_fundamentals/nuget_walkthrough/) from Xamarin site.\n\n## Usage\n\nPSPDFKit can display documents either in a new Activity or a Fragment you include into your hierarchy.\n\nNote that currently only local files are supported for PSPDFKit.\n\n### Xamarin Android and ProGuard\n\nIn order to integrate ProGuard with Xamarin you can read the following [documentation on Xamarin's Site](https://developer.xamarin.com/guides/android/deployment,_testing,_and_metrics/proguard/).\n\nStarting PSPDFKit v6.1.0 you will need to add the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file to your project's root directory and then add two entries in your project's csproj as follows:\n\nFirst, inside your [DEBUG configuration](https://github.com/PSPDFKit/Xamarin-Android/blob/master/samples/AndroidSample/AndroidSample/AndroidSample.csproj#L35) property group:\n\n```xml\n\u003cPropertyGroup Condition=\" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' \"\u003e\n  ...\n  \u003cAndroidR8ExtraArguments\u003e--pg-conf \"$(MSBuildProjectDirectory)\\pspdfkit-proguard.cfg\"\u003c/AndroidR8ExtraArguments\u003e\n\u003c/PropertyGroup\u003e\n```\n\nThe above assumes that the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file is in your root project directory, if not adjust the value file path to match your own scenario.\n\nSecond, add the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file via the following item group to your csproj as shown [here](https://github.com/PSPDFKit/Xamarin-Android/blob/master/samples/AndroidSample/AndroidSample/AndroidSample.csproj#L137):\n\n```xml\n\u003cItemGroup\u003e\n  \u003cProguardConfiguration Include=\"pspdfkit-proguard.cfg\" /\u003e\n\u003c/ItemGroup\u003e\n```\n\nAgain the above assumes that the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file is in your root project directory, if not adjust the value file path to match your own scenario.\n\n**💡 Note:** If you do not add the [pspdfkit-proguard.cfg](samples/AndroidSample/AndroidSample/pspdfkit-proguard.cfg) file to your project you will run into errors like the following:\n\n```\nR8 : warning : Missing class: org.conscrypt.ConscryptHostnameVerifier\nR8 : warning : Missing class: com.android.tools.lint.detector.api.Detector\nR8 : warning : Missing class: com.android.tools.lint.detector.api.Detector$UastScanner\nR8 : warning : Missing class: com.android.tools.lint.client.api.UElementHandler\nR8 : warning : Missing class: com.android.tools.lint.client.api.IssueRegistry\nR8 : error : Compilation can't be completed because some library classes are missing.\n```\n\n### Checking for Compatibility\n\nYou can include PSPDFKit into applications which will be distributed to devices not supported by PSPDFkit. In that case you can attempt initializing and catch `PSPDFKitInitializationFailedException` to check for device compatibility.\n\n```csharp\ntry {\n\tPSPDFKitGlobal.Initialize(this, \"\u003cYOUR LICENSE\u003e\");\n} catch (PSPDFKitInitializationFailedException ex) {\n\tConsole.WriteLine (\"Current device is not compatible with PSPDFKit: {0}\", ex.Message);\n}\n```\n\n### Display PSPDFKit Activity\n\n* Add PSPDFKit viewer activity to your applications **AndroidManifest.xml**\n\n```xml\n\u003capplication android:largeHeap=\"true\"\u003e\n    \u003cactivity android:name=\"com.pspdfkit.ui.PdfActivity\"\n              android:windowSoftInputMode=\"adjustNothing\" /\u003e\n\u003c/application\u003e\n```\n\n\u003eYou can use android:theme attribute to customize actionbar, background and other elements of the activity theme if you so desire.\n\n* Make sure you have `android:largeHeap=\"true\"` property in your `\u003capplication\u003e` tag in **AndroidManifest.xml**. Rendering PDF files is memory intensive and this property will ensure your app has enough heap allocated to avoid out of memory errors.\n\n* Create `PdfActivityConfiguration` object and then call `PdfActivity.ShowDocument()` to display the document. Document location is expressed with an Uri object.\n\n```csharp\nvar pdfDocument = Android.Net.Uri.FromFile (new Java.IO.File (Android.OS.Environment.ExternalStorageDirectory, \"document.pdf\"));\nvar configuration = new PdfActivityConfiguration.Builder(\"\u003cYOUR_LICENSE\u003e\").Build();\nPdfActivity.ShowDocument(this, pdfDocument, configuration);\n```\n\n\u003eYou can create an Uri object from file using `Android.Net.Uri.FromFile(File)` call or you can pass in Uri returned by [Storage Access Framework](https://developer.android.com/guide/topics/providers/document-provider.html). For all configuration options refer to included JavaDoc.\n\n### Display PSPDFKit Fragment\n\n* Make sure you have `android:largeHeap=\"true\"` property in your `\u003capplication\u003e` tag in **AndroidManifest.xml**. Rendering PDF files is memory intensive and this property will ensure your app has enough heap allocated to avoid out of memory errors.\n\n```xml\n\u003capplication android:largeHeap=\"true\"\u003e\n    ...\n\u003c/application\u003e\n```\n\n* Create `PdfConfiguration` object and then call `PdfFragment.NewInstance()` to create a new `PdfFragment` instance for a document.\n* Attach the fragment to your view hierarchy. Remember that fragments are retained over configuration changes, so do not recreate fragment if it's already attached - that will lead to bugs and out of memory errors.\n\n```csharp\nvar pdfDocument = Android.Net.Uri.FromFile (new Java.IO.File (Android.OS.Environment.ExternalStorageDirectory, \"document.pdf\"));\nvar configuration = new PdfConfiguration.Builder(\"\u003cYOUR_LICENSE\u003e\")\n\t.ScrollDirection (PageScrollDirection.Horizontal)\n\t.Build();\n\nvar fragment = PdfFragment.NewInstance(pdfDocument, configuration);\nSupportFragmentManager.BeginTransaction().Replace(Resource.Id.Content, fragment).Commit();\n```\n\n\u003e Note that the `PdfFragment` extends `AndroidX.Fragment.App.Fragment` and not `Android.App.Fragment`.\n\n### Render Page to a Bitmap\n\nYou can use PSPDFKit to render PDF to bitmaps without showing them in activities. To do that, use `PSPDFKitGlobal` and `PdfDocument` class calls.\n\nExample:\n\n```csharp\nPSPDFKitGlobal.Initialize (this, \"\u003cYOUR LICENSE\u003e\");\ntry {\n\tvar pdfDocument = PSPDFKitGlobal.OpenDocument (this, Android.Net.Uri.FromFile (new Java.IO.File(Android.OS.Environment.ExternalStorageDirectory, \"document.pdf\")));\n\tvar pageToRender = 1; // This is 0-indexed, use pdfDocument.PageCount to retrieve number of pages\n\tvar pageBitmap = pdfDocument.RenderPageToBitmap(this,\n\t\tpageToRender,\n\t\t// This is the size of bitmap that will be generated\n\t\tpdfDocument.GetPageSize (pageToRender).Width,\n\t\tpdfDocument.GetPageSize (pageToRender).Height);\n} catch (IOException ex) {\n\tConsole.WriteLine (\"Failed to open PDF document: {0}\", ex.Message);\n}\n```\n\n### Customization\n\nTo customize `PdfActivity` UI elements, use theme based on `Theme.AppCompat`. PSPDFKit will color actionbar and other elements according to `colorPrimary` and `colorAccent` attributes. Example theme definition:\n\n```xml\n\u003cstyle name=\"MyApplicationTheme.Theme\" parent=\"Theme.AppCompat.Light.DarkActionBar\"\u003e\n    \u003citem name=\"colorPrimary\"\u003e@color/mymain_color\u003c/item\u003e\n    \u003citem name=\"colorPrimaryDark\"\u003e@color/mymain_color_dark\u003c/item\u003e\n    \u003citem name=\"colorAccent\"\u003e@color/mymain_color_accent\u003c/item\u003e\n\u003c/style\u003e\n```\n\nAnd then it should be applied in AndroidManifest.xml:\n\n```xml\n\u003cactivity android:name=\"com.pspdfkit.ui.PdfActivity\"\n      android:windowSoftInputMode=\"adjustNothing\"\n      android:theme=\"@style/MyApplicationTheme.Theme\" /\u003e\n```\n\nOther configuration options for UI elements (icons, element sizes) can be found in `PdfActivityConfiguration` class.\n\n### More Information\n\nFor more documentation about PSPDFKit check out [PSPDFKit online documentation](https://pspdfkit.com/guides/android/current) and bundled Javadoc.\n\n## Xamarin Forms\n\nYou can use PSPDFKit SDK with Xamarin.Forms in 3 ways:\n\n1. Using a Custom PageRenderer and embedding a `PdfFragment`, see `PdfViewerPageRenderer.cs` and `PdfViewerPage.cs` inside our [provided Xamarin.Forms example](https://github.com/PSPDFKit/Xamarin-Android/tree/master/samples/XamarinForms).\n2. Showing a `PdfActivity`. See [the provided Xamarin.Forms example](https://github.com/PSPDFKit/Xamarin-Android/tree/master/samples/XamarinForms) for further details.\n3. Using [Xamarin.Forms embedding](https://blog.xamarin.com/unleashed-embedding-xamarin-forms-in-xamarin-native/), you can take any ContentPage and add it to your native applications. This is also showcased by our [PSPDFCatalog example app](https://github.com/PSPDFKit/Xamarin-Android/tree/master/samples/PSPDFCatalog).\n\n# PSPDFKit Instant\n\nSupport for Instant was added with the Xamarin.Android Bindings for PSPDFKit 4.5.1 for Android.\n\nWith PSPDFKit Instant, it’s easier than ever to add real-time collaboration features to your PSPDFKit-powered app, allowing your users to seamlessly share, edit, and annotate PDF documents across iOS, Android, and web. With just a few lines of code, PSPDFKit Instant gives your users a massive productivity boost.\n\nFor more information about Instant, please have a look at our [website](https://pspdfkit.com/instant/).\n\n# Examples\n\nYou can find several sample projects in the `samples` folder, including a catalog and Xamarin.Forms example.\n\n## How to Run the Example Projects\n\n1. Complete the [first step in the advanced setup](https://github.com/PSPDFKit/Xamarin-Android#step-1---get-pspdfkit-aar-file) to download the required files by executing the `./build.sh` script in the `Xamarin-Android` folder.\n2. Open the `PSPDFKit.Android.sln` solution in Visual Studio.\n3. Select the example project and device you want to run it on (alternatively you can also right-click on the project and select \"Build `Project Name`\").\n\u003cimg width=\"60%\" src=\"Images/Project-setup.png\"/\u003e\n4. Tap on the triangle on the left to run the project.\n\n### PSPDFKit Instant Example\n\nThis example is included in the PSPDFCatalog example, but you can also find the code [here][Instant Example].\n\nThe PSPDFKit Instant example shows how easy and efficient Instant works. Just go the [Instant demo page](https://pspdfkit.com/instant/demo/) and tap on `Instant on Android`, this will show a code at step three, which you have to enter in the example on your device. Afterwards you'll be connected to the server and you can start testing!\n\n\u003cdiv id=\"image-table\"\u003e\n     \u003ctable\u003e\n  \t    \u003ctr\u003e\n      \t    \u003ctd\u003e\n             \u003cimg width=\"90%\" src=\"Images/Instant-device.png\"/\u003e\n           \u003c/td\u003e\n           \u003ctd\u003e\n             \u003cimg width=\"90%\" src=\"Images/Instant-desktop.png\"/\u003e\n           \u003c/td\u003e\n       \u003c/tr\u003e\n    \u003c/table\u003e\n\u003c/div\u003e\n\n\n### PSPDFCatalog\n\nThe `PSPSDFCatalog` project has various little example projects in it, including a basic example, which opens a demo document in PSPSDFKit, an example for automatically filling out forms, or one for creating a password protected PDF.\n\n\u003cimg width=\"80%\" src=\"Images/Catalog.png\"/\u003e\n\n\n### Xamarin.Forms\n\n`XFSample.Droid` is an example showcasing how to build an app with PSPDFKit using Xamarin.Forms.\n\n\u003cimg width=\"80%\" src=\"Images/XForms.png\"/\u003e\n\n\n### AndroidSimple\n\n`AndroidSimple` is an example project showing showing how to open and present document, or how to open a document from various file providers or the local file directory.\n\n\u003cimg width=\"55%\" src=\"Images/AndroidSimple.png\"/\u003e\n\n\n### Known Issues\n\n**Unsupported devices**\n\n- Samsung Galaxy Note 2 (GT-N7100) / Android 4.4.2 (N7100XXUFND3)\nMemory issues because of defective garbage collection.\nSource: [https://code.google.com/p/android/issues/detail?id=71073](https://code.google.com/p/android/issues/detail?id=71073)\n\n### Contributing\n\nPlease ensure [you signed our CLA](https://pspdfkit.com/guides/web/current/miscellaneous/contributing/) so we can accept your contributions.\n\n[Instant Example]: https://github.com/PSPDFKit/Xamarin-Android/tree/master/samples/PSPDFCatalog/Catalog/Instant\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpspdfkit%2Fxamarin-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpspdfkit%2Fxamarin-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpspdfkit%2Fxamarin-android/lists"}