Developing for jailbroken iPad - ios

I'm new to programming for iOS and on MacOs, so excuse me for asking a dumb question here.
But I wonder if I really need the iOS developer license or that I can jailbreak my iPad and then just develop for it. Would I be able to use the free version of Xcode with the latter?
Or would I still need to get the license to get the iOS Xcode?
Not that I am into warez, but jailbreaking is legal (where I live), so if I would buy the developer license just to publish apps, I would postpone this untill necessary.

There's an app called Jailcoder, which I discovered in a now deleted post (https://apple.stackexchange.com/a/34802/8699). It sets up Xcode and indvidual project files so that the resulting apps can be run on jailbroken iOS devices without a developer's license (and can apparently revert the changes, though I haven't tried this).
More info on jailcoder: http://oneiros.altervista.org/jailcoder/

You can just use the free version of the developer license which will allow you to develop iOS apps on the simulator. The only downside is that some hardware interfaces (core location, gyro/accelerometer, etc) cannot be tested with the simulator. If you don't need that stuff immediately just use the free license and then purchase the real license when you are ready to go.

Beginning Jailbroken iPhone Development is a two-part article that tells you how to get started. I haven't tried this, but it does look like it starts with setting up your tools through how to launch the jailbroken app on your device. There is a link to the second part of the article. There is no mention of needing a developer's license at all.
The article also refers to a tool called Theos, which simplifies the whole process.
I hope this helps.

This worked perfectly for me. Follow the steps listed in this blog article. And you'll be able to code for jailbroken iPhones and iPad devices :)
http://techtalktone.wordpress.com/2011/12/05/testing-your-ios-apps-on-a-jailbroken-device-2/

Related

What are the *real* requirements for iOS development

As far as I can see, the requirements to develop for any iOS device are:
1. Own a Mac computer that runs the latest version operating system.
2. Register with Apple to be an iOS developer for $99.00 + tax, annually.
3. Own an iOS device that runs the latest iOS operating system your application will support. For a professional iOS developer, that means the latest operating system out.
Am I wrong?
If so, where? I've just bought a brand new iMac and I'm looking for a used iPhone. I want to make sure I buy one that will allow me to develop iOS in the latest version.
Yes, I worked at a company doing iOS development and I had to do those three things (They handled the registration), and nothing more. You don't need a physical phone either though, XCode comes with a pretty good simulator. When working I almost always used the simulator, occasionally pulling the real device for touch/UI testing. It's still important to check functionality in real life if you have a nontrivial UI, since it's hard to know how the UI "feels".
You need the latest version of Xcode (requirements for Xcode 10 can be found in this post). Having a relatively up to date Mac usually does the trick.
You need an Apple Developer account - $99 / year for personal account or $299 / year for enterprise account.
You do not technically need any iOS devices to do iOS development and releases; however, the simulator does not have all the functionality a real device has. So depending on your features, it may be required. Also, some bugs only show up on certain devices, so it’s always good to test on as many real world devices as possible. For more details on the capabilities of the iOS Simulator, check here.

Xamarin free edition and Deployment Jailbroken iPhone 7x possible?

I just started developing for the iPhone with Xamarin free. I have the free edition and I don't have an Apple Development license.
Is it possible to jailbreak my iPhone 5s and deploy on the jailbroken iPhone? I read somewhere that it will be difficult because of Cydia.
And can I deploy with the free edition?
Tnx!
I do Xamarin development (with the business license but that doesn't matter) on my jailbroken iPhone 5s on iOS 7.0.6 with no problems.
However, if you are asking if you can develop jailbreak tweaks with the xamarin tools, that is a different thing. I want to know that exact thing so I asked a question here but didn't really find a good solution. You would have to compile it to a library (not an application) that your tweak would reference. Your other problem is that you would probably want to use a private API that Xamarin doesn't expose/wrap.
Xamarin, now, allows you to deploy to device with the Starter edition as long as the app is below a certain size.
Lastly, this is probably the biggest killer for you, you can't deploy to your device without being in the apple developer program. You need to have certificates to sign your builds and make publishing profiles to allow your phone to run ad-hoc/debug builds which can only be made through apple's dev site. This is also where you can register your device(s) as a testing device.

Do I need an iOS device to test PhoneGap Built apps?

I'm a complete noob and figuring out all this as I go along so bear with me.
I've built an app using jQuery Mobile, used PhoneGap Build and it works totally fine on Android and I'll deploy it soon. I'm now trying to figure out the more complex steps towards getting it ready for the iOS market. I've got my developer account set up and have tested my app as built with Xcode 4.2 and Cordova.
What I'm having confusion over (well one of the things) is whether or not I need an actual iOS device in order to get the proper provisioning and certificates. Can I get those, run the package through PG Build and then test it with the Xcode iOS simulator? Must I bother my friends to give me one of their iPhones to test on?
If I'm being vague or asking this the wrong way I apologize.
I'm currently building an app for iOS using Phonegap and even though I have done some testing with a physical device I have seen that the simulator works really well. I mean it would definitely be a good idea to at least run one test of your final version on a physical device before you decide to submit, Apple and pretty much everyone else very strongly suggest that you do, but you aren't required to test on a physical device. All the provisioning and certificate stuff can be done through the Apple Developer site.
The only real reason I could see your app not getting approved relating to this topic is if there is some weird glitch that is only present on a physical device and looks fine on the simulator.
And keep in mind, though it probably won't get you disapproved I've noticed that Phonegap apps that use jQuery Mobile tend to be more glitchy on the transitions compared to when they are run on the simulator.
No you don't need an iOS device to get certificates. You can get them using OpenSSL. I created a GUI to help do just this for Windows users.
However Apple is one of the strictest in approval. It takes 8 days for them to approve an app. And they have been know to not approve apps simply because of there appearance.
Now I myself prefer to have iDevices to test apps.
http://community.phonegap.com/nitobi/topics/detailed_guide_for_setting_up_building_ios_apps_without_a_mac
http://community.phonegap.com/nitobi/topics/ios_app_rejected_advice_on_how_to_fix_it
To help with some App Rejection issues you may get when submitting the app.
https://github.com/AndiDog/phonegap-ios-tabbar-plugin
https://github.com/LinuxPhreak/iOS-Win-Signer
You will need an Apple computer to submit apps to the App Store. Apple no longer has a web based App Submission

Deploying MonoTouch-App on jailbroken iPad

I am learning to create Apps for the iPad via monoTouch by now.
For testingreasons I wanted to try out my app on the physical device (I know I need a pro/enterprise-licence from xamarin, and I will buy one). As we are not sure by now, what apple-dev.-program we want to subscrbe (pro, enterprise etc.), I wanted to try the stuff out by now on my iPad2 with jailbreak.
Is it possible to build for and debug on an iPad2 with monoTouch, without certificates and provisining files? And if how? All manuals I found are for XCode or are the "normal" way to build your apps when you are already enrolled at apples dev-program.
Thanks in advance!
UPDATE: I am not talking about using MonoTouch without a license. I am talking about using a paid and activated version of MonoTouch without an Apple-Developer-Subscription. Sorry for the obfuscation.
Is there no possibilty to install your bought MonoTouch and start debugging on your device without being enrolled at an paid apple-subscription?
In my opinion, developing for Cydia is pretty poorly documented--and will definitely have no documentation for MonoTouch. This question discusses how to do it from XCode. Also, checkout saurik's site, he discusses alot about Cydia on there.
You are in untested waters, but you might want to try signing with ldid and use the --nosign option in MonoTouch.

Starting iPhone app development in Linux? [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 7 years ago.
Improve this question
I've heard that you need to get a Mac if you want to develop iPhone apps. Is this true?
Is it possible to develop iPhone apps using Linux? If yes, what do I need and where do I download the necessary tools?
To provide a differing response, I'm running OS X and Xcode on a virtualised (VMware) machine on Linux. CPU is a Core2Quad (Q8800), and it is perfectly fast. I found a prebuilt VM online (I'll leave it to you to find)
Xcode/iPhone development works perfectly, as does debugging via USB to the phone itself.
It actually surprised me a lot - but I've had no issues at all.
The answer to this really depends on whether or not you want to develop apps that are then distributed through the iPhone store. If you don't, and don't mind developing for the "jailbroken" iPhone crowd - then it's possible to develop from Linux.
Check this chap's page for a comprehensive (if a little complex) guide on what to do :
http://www.saurik.com/id/4
It seems to be true so far. The only SDK available from Apple only targets the macOS environment. I've been upset about that, but I'm looking into buying a mac now, just to do iPhone development. I really dislike what they are doing, and I hope a good SDK come out for other environments, such as Linux and Windows.
Obstacles regarding the SDK:
The iPhone SDK and free software: not a match
Apple's recently released a software development kit (SDK) for the iPhone, but if you were hoping to port or develop original open source software with it, the news isn't good. Code signing and nondisclosure conditions make free software a no-go.
The SDK itself is a free download, with which you can write programs and run them on a software simulator. But in order to actually release software you've written, you must enroll in the iPhone Developer Program -- a step separate from downloading the SDK, and one that requires Apple's approval.
I think it's rather elitist for them to think only macOS users are good enough to write programs for their phone, and the fact you need to buy a $100 license if you want to publish your stuff, really makes it more difficult for the hobbyist programmer. Though, if that's what you need to do, I'm planning on jumping through their hoops; I'd really like to get some stuff developed on my iPhone.
There used to be a project dedicated to solve this defect: iphone-dev
The goal of the iphone-dev project is to create a free, portable, high quality toolchain to enable development for the Apple iPhone and other embedded devices based on the ARM/Darwin platform.
Regarding the alternative tool chain, Saurik's site is useful but for latest firmware development he indicates building on the iPhone itself and stays clear of indicating that you may need to copy necessary iPhone firmware files to your Linux environment. It's not impossible, but just requires additional work, especially for signing the code (there are open alternative solutions out there as well).
Also, take a look at other guides (for the same tool chain) that approach it more methodically.
I'd suggest to still do the final build and code signing and packaging in XCode (which may mean borrowing someone's Mac) in case you run into problems when submitting the application to Apple. Using the alternative tool chain opens up (at least on the Mac) the possibility of using other IDEs other than XCode for developing the application and again resorting to XCode for the deployment and testing with the simulator.
Of course if you do get the code signing / certificate generation working from the command line outside of XCode then you can install a certificate on your actual iPhone and test there (installing the app via iTunes w/your certificate).
The only way I know of doing development in Linux for the iPhone would be to install Vmware and work on getting OS X running in a virtual machine. With that said there are some "legal" concerns in doing that. It is reported that OS X Server can be virtualized but as far as the development story on that I don't know.
If you are truly serious, that's the what I'd investigate.
Good luck.
You can use Tersus (open source), and it lets you export the app as an Xcode project.
You might be able to write code on a Linux box that will eventually find itself on an iPhone or iPad, but ultimately you would need a Mac to test or deploy the code to the iPhone or to submit it to the App store. So ultimately you need a Mac, so you might as well do the work on the Mac too, with all the tools that Apple provide. There are alternatives to Xcode & Objective-C, such as Monotouch - but these utilize the Apple tools too.
You can with some work run OS X in a VM on Linux. However I should point out that this will break the OSX license agreement, even if you buy the copy of OSX - as it is only licensed to run on Apple hardware.
Sorry to give you this news - the ecosystem around the iPhone/iPad is very tightly controlled.
EDIT: One major exception to this is writing a web app for the iPhone. There are some excellent web apps for the iPhone which are almost as good as user experience as a native app. However I did interpret your question to be about native app development. Web apps, although the user can create an icon for launching them - are still 'second class' citizens.
I've had success building iOS apps on linux using the iOS clang toolchain by cjacker. Basically it consists of the upstream clang and llvm tools from your linux distro, a linux port of apple's linker and some extra tools to help simplify the build process (such as converting xcode projects to Makefile format).
It does take a few steps to install, but you're a software developer so you'd be used to that. I posted an up to date howto for Debian 7 (Wheezy) online:
https://rogerkeays.com/how-to-build-an-ios-toolchain-for-linux-debian-7
Otherwise you want to go with the generic instructions which are a little older:
http://code.google.com/p/ios-toolchain-based-on-clang-for-linux/wiki/HowTo_en
Good luck.
There's a framework called Rhodes.
The concept is based on Ruby on Rails and you develop your mobile app in Ruby and HTML, and you can write your code in a Linux environment. You can then create an account at Rhohub, where you add the code (through GitHub), and it allows you to compile it for iPhone, Blackberry, Android, Windows Mobile and Symbian, all off the same code. You don't have to code in Objective-C for iPhone, nor Java for Android, etc. It does the conversions for you. All you need to do is stick to the Rules for creating an iPhone application (or the Phone's you want to develop for) so it can be accepted at iTunes (or the equivalent market).
This will allow you to add the app to iTunes as well.
I have not found any emulators, however, which means that to test your app you need to put it on an iPhone, which is a mission.
I am using this option as I want to create apps for all phones and I use Ruby on Rails already. If you just want to make an app for an iPhone, then invest in a Mac.
Hope this helps.
You're right non-jailbroken phones are limited to Apple's App store and Apple "has the right" to enforce whatever rule, it's totally nonfree territory.
However while developing, one won't have to deal with Apple at all. You can use e.g. rsync to upload the code to the device and test it.
To a certain extent, yes, it is possible. You can type Objective-C code and set up your projects. You can even test the C and C++ parts of your code with gcc.
What you cannot do:
Use Interface Builder to set up your interface, as it's Mac-only. (Not required, but recommended.)
Compile code that uses Apple's Cocoa classes - they don't exist on Linux.
Test code in the Simulator - there isn't one for Linux.
Compile code for real devices or for the App Store - all this requires tools that Apple only provides for OS X.
You need to get mac for it. There are several tool chains available (like win-chain) that actually lets you write and build i Phone applications on windows. There are several associated tutorials to build the Objective C code on Windows. But there is a problem, the apps hence developed will work on Jail broken i Phones only.
We’ve seen few hacks to get over that and make it to App Store, but as Apple keeps on updating SDKs, tool chains need regular updates. It’s a hassle to make it up all the time.If you want to get ready app you can also take help from arcapps its launches apps at a reasonable price.
iphone app development
I did an attempt to port cocos2d-iphone to GNUstep so that you can Develop game based on cocos2d. However for publishing you need a mac. cocos2d-GNUstep.
I would recommend getting a mac because the ios simulator is amazing for testing in the early stages of an app. But I do know of a small company we work with that develops using Unity so they don't need a load of macs. That way they only need one mac for the office and that's just to compile the final build. It also means it works on android but it really depends on what your building because it's a games engine. You may want to look into web apps using frameworks like Sencha Touch Mobile
Unity: http://unity3d.com/
Sencha Touch: http://www.sencha.com/products/touch/
If you value your time, buy a Mac! I don't know enough about Linux development options to offer a viable solution, but it seems the proposed methods involve some pretty roundabout work. If you plan on seriously writing and selling iPhone apps, I think you could easily recoup the cost of a Mac Mini or Macbook. :-)
You will never get your app approved by Apple if it is not developed using Xcode. Never. And if you do hack the SDK to develop on Linux and Apple finds out, don't be surprised when you are served. I am a member of the ADC and the iPhone developer program. Trust, Apple is VERY serious about this.
Don't take the risk, Buy a Macbook or Mac mini (yes a mini can run Xcode - though slowly - boost the RAM if you go with the mini). Also, while I've seen OS X hacked to run on VMware I've never seen anyone running Xcode on VM. So good luck. And I'd check the EULA before you go through the trouble.
PS: After reading the above, yes I agree If you do hack the SDK and develop on Linux at least do the final packaging on a Mac. And submit it via a Mac. Apple doesn't run through the code line by line so i doubt they'd catch that. But man, that's a lot of if's and work. Be fun to do though. :)

Resources