Latest 1.0.0
Homepage https://github.com/haifengkao/PodAsset
License MIT
Platforms ios 7.0, osx 10.12, tvos 10.1, requires ARC
Authors

CI Status
Coverage Status
Version
License
Platform

Usage

Why is it so painful to access the assets in CocoaPods?
Pain No More!

Get the damn image:

// Swift
import PodAsset

let bundle = PodAsset.bundle(forPod: "SomePod")
let img = UIImage(named: "SomeDamnImage", in:bundle, compatibleWith:nil)
// Objective-C
@import PodAsset;

NSBundle* bundle = [PodAsset bundleForPod:@"SomePod"];
UIImage* img = [UIImage imageNamed:@"SomeDamnImage" inBundle:bundle compatibleWithTraitCollection:nil];

Get the damn data:

// Swift
let data = PodAsset.data(forFilename: "SomeData.dat", pod: "SomePod")
// Objective-C
NSData* data = [PodAsset dataForFilename:@"SomeData.dat" pod:@"SomePod"];

Get the damn json:

// Swift
let jsonString = PodAsset.string(forFilename: "SomeDamn.json", pod: "SomePod")
// Objective-C
NSString* jsonString = [PodAsset stringForFilename:@"SomeDamn.json" pod:@"SomePod"];

To run the example project, clone the repo, and run pod install from the Example directory first.

Requirements

The resource bundle name, by default, is the pod name.
If not, please check the third party pod’s podspec and find out the resource bundle name:

  s.resource_bundles = {
    'PodAsset' => ['Pod/Assets/*.png']
  }

In the above example, the bundle name is PodAsset.

Installation

PodAsset is available through CocoaPods. To install
it, simply add the following line to your Podfile:

pod "PodAsset"

How It works

Pod Asset will search all bundles and find the correct one.

If you don’t want to use PodAsset, you can still find the correct bundle by bundleForClass:.

If the pod is loaded as a dynamic framework, locate its bundle by:

[NSBundle bundleForClass:[some class which is defined in your pod]]

If the pod is loaded as a static bundle, locate its bundle by:

[NSBundle mainBundle] 

or

[NSBundle bundleForClass:[some class in your app]].

Author

Hai Feng Kao, [email protected]

License

PodAsset is available under the MIT license. See the LICENSE file for more info.

Latest podspec

{
    "name": "PodAsset",
    "version": "1.0.0",
    "summary": "Unable to find cocoapods resources? Here is the solution!",
    "description": "It is a very frustrating experience to locate the resources (assets) provided by the third-party pods.nPodAsset provides a simple way to load the resources. nAnd debugging tools if you cannot locate the correct bundles.",
    "homepage": "https://github.com/haifengkao/PodAsset",
    "license": "MIT",
    "authors": {
        "Hai Feng Kao": "[email protected]"
    },
    "source": {
        "git": "https://github.com/haifengkao/PodAsset.git",
        "tag": "1.0.0"
    },
    "platforms": {
        "ios": "7.0",
        "osx": "10.12",
        "tvos": "10.1"
    },
    "requires_arc": true,
    "source_files": "Pod/Classes/**/*"
}

Pin It on Pinterest

Share This