Does Apple allow to download OpenGL shaders in iOS game at runtime? [closed] - iphone

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I am planning to implement iOS game where certains assets - textures, shaders, etc. are downloaded at runtime when user buys specific in-app purchases .
Its well known fact about Apple prohibiting downloading & emitting iOS app code at runtime:
3.3.2 An Application may not download or install executable code. Interpreted code may only
be used in an Application if all scripts, code and interpreters are packaged in the Application and
not downloaded. The only exception to the foregoing is scripts and code downloaded and run by
Apple's built-in WebKit framework.
Does this restriction also include Open GL shaders, i.e. can shaders code be downloaded at runtime?

Alex and co are correct. Section 2.4 of the agreement states that you may not use the In-App Purchase API to "add any additional executable code" to the app - only data is permitted. They explicitly state that the functionality must be embedded within the app and unlocked by the purchase.
I can see why it would be desirable to add shaders as part of new content though; maybe you should contact Apple directly for a ruling to be certain?

Related

iPhone application development [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I’m building my portfolio as a freelance graphic designer, and I develop designs for mobile apps. I’ve got android app development down, but I’m not sure if my knowledge of iPhone application development extends to the newest iO7 operating system. I’ve noticed that whenever a new operating system is available for iPhones, some of the apps for the previous system don’t work anymore. Does anyone know how I can keep up with the nuances of the newest iPhone operating system?
I understand what you're going through as I was myself in a position like yours.
So, what you need to understand is that the iOS development standards never completely change. The language i.e. Objective-C will always be the same. Now, there are of course improvements.
The most important keyword for you to know is deprecation. If a method or a class is deprecated, it means that it works for older versions of iOS but not for the latest one. Almost 99% of the time, that method or class is replaced by a newer, better one and it is clearly mentioned in the documentation.
So, I'd recommend that you start out by learning iOS 7 development only. Believe it or not, the major change in iOS 7 is mainly its looks and the core development concepts still remain in place.
Optimizing your app for previous operating systems is mostly a no-brainer. There are several tutorials online and its nothing a through Google search can't solve.
As someone who also came from an Android background, I can understand the urge to sometimes find certain similarities between the development process. There are nothing but misconceptions and don't think of such thing while making your app otherwise you might run into some very big problems.
Hope this helps you.
If you are an Apple developer, there are many different resources at you finger tips such as the new "Tech Talks" that explain new things that are coming into play for IOS Development. However, if you are not a developer there are still some ways to keep up with it such as watching the annual keynotes and checking their website regularly. One way that is possibly the most effective is to use it. Also it is always good to explore Xcode and things like the object library. When you preform the update on your iPhone, read the details of what is new in this update. Hope this helped

Library for both iOS and OS X apps? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
For a while now I have been killing spare time by creating a 2D game programming toolkit/library. It is written in Objective C, and consists of an OpenGL rendering system and a whole bunch of AI, physics code, a bunch of specialized containers and other game related stuff. Apart from the OpenGL based View mechanism (obviously), most of this code should be easily portable to iOS since it only uses the Foundation Framework and that framework appears to be implemented on iOS. So far I have only been testing the various components using a Cocoa NSOpenGLView but now I want to create a OS X/iOS library.
My Question is:
What's the best strategy for creating an Objective-C library that can be integrated into either iOS or OS X applications?
The Xcode 'New Project' dialog offers only:
iPhone OS; Library:
- Cocoa Touch Static Library.
Mac OS X, Framework and Library:
- Cocoa Framework
- Cocoa Library
- Bundle
- BSD C Library
- STL C++ Library
- JNI Library
At first glance none of these seems to be intended for creating a library that can be integrated into either OS X or iOS applications.
Well, I finally found the correct set of Google search terms, so to answer my own question (DOH!), it seems to be possible to share code, at least between iPhone apps and possibly also iPhone and OS X apps within certain limits. You have to create a 'static library' and use 'cross-project references':
http://www.clintharris.net/2009/iphone-app-shared-libraries/
http://www.amateurinmotion.com/articles/2009/02/08/creating-a-static-library-for-iphone.html
http://zetetic.net/blog/2010/02/15/building-static-libraries-to-share-code-on-iphone-and-mac-os-x-projects/
http://weston-fl.com/blog/?p=808
Haven't tested any of this yet but it looks promising.
You can do this with Targets.
Create a new project for a Cocoa Library. Then add a new target for a iOS Static Library. As you create new files ensure they're added to the appropriate targets (i.e. presumably both in your case) and set per-target build settings as required.
Projects using your library on the different platforms will need to link against the appropriate product but you won't need to duplicate your code.

iPhone for Intranet [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 3 months ago.
Improve this question
It started one day while I was using my iPod Touch: wouldn't it be cool to have XXX function (from our internal desktop application) available on the iPhone as an native app.
I had that idea because (A) I think our current bulky desktop internal 6+ years old application suite needs a major face lift, and (B) instead of continuing our waterfall development methodology, which usually resulted in a project canned after tens of people spending months on something that no user cares about. I hope that we can start doing lots of tiny projects with 2 week iteration cycles using Agile methodology.
Oh, I also want to find an excuse to use XCode in the office.
After researching, I found out that pretty much NO COMPANY does iPhone native intranet applications because no company wants their internal development needs to be controlled by Apple who tends to kill cool apps like Google Talk. Since our company is ultra concerned about security and safety, the phrase "using a jailbroken iPhone/iPod Touch" is the same as saying "please fire me".
So I came up with plan B: using ComponentOne iPhone Studio to do a iPhone optimized intranet web application. I spent 2+ weeks and it is about finished. My supervisor seemed very excited about it, so hopefully we can turn it into a long term project.
My question is: have any of you tried writing an iPhone application (either native app or web based app) for your company's internal use, and what are the technical and political challenges?
I've written three internal applications (native) for my company.
We are able to use ad-hoc distribution (less than 100 users ; do not qualify for the 500 person enterprise program).
It's been great. The execs love it, our salespeople are using them like crazy. A few new customers have already been credited to being impressed by our tech and coming on board when they saw our apps.
Win-win-win so far.
We've talked about it some at my office, but that's as far as it's gone. The Enterprise developer license allows you to control the distribution of your app within your organization, not Apple. The AppStore isn't involved at all.
If you write your web applications well it is very easy to add an interface for most mobile devices not just iphone.
We use things like: intranet.domain.com/application/mobile/
We always create our web apps with layers of functionality so that the UI side is easily switchable. My favorite at the moment is MVC style. This way you just have a UI designer work on the mobile interface but all the underlying business logic is the same which ever device you are using.
I would also still love to write native iPhone apps for our systems as they are just much cooler :-) Damn you Apple for not allowing us.
I build all of my iPhone app as we apps using ASP.NET. ComponentOne has Studio for iPhone which lets you build ASP.NET sites that look and behave like native iPhone apps. It's a great solution for Microsoft developers like me who do not have access to Apple machine or Dev Kits.
I used it to build a mobile version of our website that calls the same class library our main website does. This is my favorite part of the concept, using my existing model.
Here is the link where you can read more about the iPhone ASP.NET controls

iOS: Open Source VoIP/SIP Objective-C Code [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I have been tasked with investigating the feasibility of writing an iPhone App to access our internal VoIP/SIP systems.
I've never coded anything close to VoIP before. Are there any open source VoIP/SIP libraries or examples in C or Objective-C?
An iOS App that I can skin and add our required features to (mainly UI related) would be the holy grail here.
You may take a look at siphon (http://code.google.com/p/siphon/).
From their homepage:
Home of the World's first free
SIP/VoIP application for iPhone and
iPod Touch 1 and 2.
Siphon SIP/VoIP project is the first
in his category that works on iPhone
and iPod Touch 2 with headset for all
SIP providers. It is a native
application approved running on 2.X
using internal micro/speaker and
headset.
The Application supports the SIP
standard, preserving compatibility
with hundreds of SIP providers and
offers a GUI which preserves the apple
design of native iPhone applications.
PORT SIP
If you are a new comer on VOIP i would suggest using simple sdk's like PORTSIP
It is free download.you can check the app and make calls and also play around with the call.It is payable only if you want to use it for business.PORTSIP sdk is very easy compared to other sdk's or open source projects.
-ves
Not open source,offers less flexibility
LINPHONE
After you get hold of this you go for the open source projects Linphonen/PJSIP etc.
Linphone offers high quality sound but is very complicated to integrate and very less documentation is available.you will have to build the project first.http://shallwelearn.com/blog/build-linphone-for-iphone-and-ipad/ (for IOS)
-ve s
Very poor documentation
-PJSIP
Your best option is PJSIP which is very good with documentation and offers everything.Because you get code from scratch you can do anything with the code.
I highly recommend PJSIP.But it is difficult to directly go and devolep in PJSIP ,what i would recommend is do sample stuff on simple projects like portsip and go for PJSIP
Although it's rather old thread, for reference I add here also pjsip: http://www.pjsip.org that has a quite mature iOS port nevertheless it is written in C and its API is also in C.
UPDATE as of 06/2021: please note that this answer was originally written 9 years ago. I completely off from VoIP development now and can't take any responsibility wether pjsip is still working on iOS or swift.
Also there's Linphone for iPhone: http://www.linphone.org/eng/linphone/news/linphone-for-iphone.html
It supports G711, speex narrowband and wideband and iLBC codecs. Configured with your favourite SIP gateway it will allow you to run calls to PSTN numbers from your mobile using 3G or wifi
http://www.pjsip.org is not the most perfect.
Video is available on PJSIP version 2.0 and later. Only desktop platforms are supported, mobile devices such as iOS are not yet supported. This document describes how to use the video feature with PJSIP.
Follow this link it will give you perfect solution
http://www.xianwenchen.com/blog/2014/06/09/how-to-make-an-ios-voip-app-with-pjsip-part-1/
I use siphon, try this:
os-mac
ide-X

Access to iPhone music library [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 5 years ago.
Improve this question
I'm planning to develop kind of DJ application which loads musics from music library.
And of course it'll sell in app store.
So question is, does it possible distribute in AppStore?
I found it was forbidden at least about 6 month ago...
But I hope it is possible now...
In iPhone OS 2.x you can't access the music transferred to the phone via iTunes. You only have access to the data created by your own application.
The forthcoming version 3.0 does have this capability. Release notes include this
iPod Library Access
Several new classes and protocols have
been added to the Media Player
framework (MediaPlayer.framework) to
allow access to the user’s audio
library. You can use these classes to
perform the following tasks:
Play audio items from the user’s library. This support lets you play
all audio types supported by the iPod
application.
Construct queues of audio items to play back.
Perform searches of the user’s audio library.
Access the user’s playlists (including smart, on-the-go, and
genius playlists).
For more information about the classes
of the Media Player framework, see
Media Player Framework Reference.
(sorry,links may only be working for registered Apple developers).
In version 3.0 of the iPhone SDK you now have access to the music library.
The SDK 3.0's Media Library Framework only allows you the most basic iPod controls over the music. You can't even output the .mp3 and work on it yourself (with OpenAL etc.).
So basically, its control can be only as capable as the iPod's, which is far too limited for any DJ applications.
Otherwise I would dream making the most amazing portable DJ device in the history of turntablism, ever. Hope we see that coming in SDK 3.1.
Just putting it out there:
If you want to use PrivateFrameworks and make an app for the hell of it, then there is a Private Framework called MusicLibrary.
To create a DJ application, won't you need the ability to load multiple songs at once then play over the top of each other?
As far as I know, the SDK only allows you to load 1 track at a time.