• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Framework project config & accessing resources in the framework bundle.
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Framework project config & accessing resources in the framework bundle.


  • Subject: Re: Framework project config & accessing resources in the framework bundle.
  • From: Nelson Santos <email@hidden>
  • Date: Sun, 11 Mar 2007 10:45:56 -0400

Hi Chris,

Thanks for the response. Am I literally supposed to put "@executable_path/../frameworks" into the installation path build setting? With that value in there, after building my Cocoa app, two folders are created on my hard disk's root folder. One called "@executable_path", and another one called "Frameworks" with my framework built in there.

I was able to locate the Apple document "Framework Programming Guide" ("Creating A Framework" page). I am using this document and your email to try to set up my build settings but I'm not getting very far.

One thing the document tells me to do (that I am trying to avoid doing) is setting up my framework to build into the same folder as my app. I don't want to hardcode my framework to build into the folder of one app. I want it to either built into its own directory, or set a relative path to the app I am building at the time so that it's more flexible. I wouldn't think that a framework MUST be built in the same directory as the app build directory for me to get a framework embedded in my app bundle. Am I wrong in thinking that?

Nelson


On Mar 11, 2007, at 1:47 AM, Chris Hanson wrote:

On Mar 10, 2007, at 6:33 AM, Nelson Santos wrote:

The only successful way that I've managed to do it is with the following code from within my Cocoa project:

NSBundle *bundle = [NSBundle bundleForClass:[MyFrameworkClass class]];
NSString *path = [bundle pathForResource:@"AFileInTheFrameworkBundle" ofType:@"plist"];



This is correct. You need to explicitly specify that you're loading resources from your framework bundle, rather than from (say) the result of +[NSBundle mainBundle]. That will always be whatever has linked against your framework.


This works fine, but upon examining the resulting bundle path and the resource path, I noticed that they point to the framework bundle located in my user library frameworks directory. I don't want that. I want it to fetch the resource from the framework folder found inside the cocoa application bundle that I am building. My understanding of the search tree is that a framework is first searched for within the App bundle (and it is indeed there). But it's not doing that.

This is incorrect. A framework is searched for in the location that is specified in the framework binary itself. Mac OS X has considerably less "look for a library in this set of default search paths" behavior than, say, the traditional Mac OS did.


You should set the installation path of your framework to "@executable_path/../frameworks". This will ensure that the application using your framework actually looks for it inside its embedded Frameworks directory.

You can probably use Google search to find step-by-step tutorials on embedding Cocoa frameworks in applications.

  -- Chris

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden

** ACCEPT: CRM114 PASS osb unique microgroom Matcher **CLASSIFY fails; success probability: 0.5000 pR: 0.0000
Best match to file #0 (nonspam.css) prob: 0.5000 pR: 0.0000 Total features in input file: 4928
#0 (nonspam.css): features: 1, hits: 0, prob: 5.00e-01, pR: 0.00#1 (spam.css): features: 1, hits: 0, prob: 5.00e-01, pR: 0.00


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


  • Follow-Ups:
    • Re: Framework project config & accessing resources in the framework bundle.
      • From: Sherm Pendley <email@hidden>
    • Re: Framework project config & accessing resources in the framework bundle.
      • From: Nelson Santos <email@hidden>
References: 
 >Framework project config & accessing resources in the framework bundle. (From: Nelson Santos <email@hidden>)
 >Re: Framework project config & accessing resources in the framework bundle. (From: Chris Hanson <email@hidden>)

  • Prev by Date: Getting NSNumbers (or C scalars) from bytes
  • Next by Date: Re: Need help with setNeedsDisplay - Another Update
  • Previous by thread: Re: Framework project config & accessing resources in the framework bundle.
  • Next by thread: Re: Framework project config & accessing resources in the framework bundle.
  • Index(es):
    • Date
    • Thread