how to make IPJSUA become a .IPA file? - iphone

I just compile the IPJSUA and build using xCode 4.3.2, and also run on simulator. But still can't call/send IM.
I'm thinking about limitation for simulator, now I want to deploy into .IPA file and test it using my phone. But I got an error.
If I'm using iPhone Developer Certificate, I got a lot of error like this pic.
If I'm using iPhone Distribution Certificates, I got a error message like this.
No unexpired provisioning profiles found that contain any of the keychain's signing certificates
Anybody ever try how to make IPJSUA into .IPA files?
What different between iPhone Developer Certificate and iPhone Distribution Certificate?
Here is the picture, I already linked the library, the architectures, and the search path.
I already can make the .IPA file, but still can't make a call or send IM. can you make a call with IPJSUA using your devices/simulator?
thanks.
UPDATE: Already can call/send IM/add buddy. I will Refer to the new question that I will answer by myself. The step by step of using PJSIP on xCode. Thanks.

If you're just testing it on your own phone, and your phone is registered in the developer portal then there is no need to generate a .IPA file. You can just plug your device into the computer and build it directly onto the device. If however you want to distribute to multiple devices that aren't registered yet(such as friend's devices), i would suggest looking into testflight which simplifies this process, and gives a step by step instruction here on how to create and upload your IPA.

It took me days to get ipjsua running on devices. A couple things I ran into:
Are you linking to all the proper binaries? There's about 20 or so you need to link to, you can check their ipjsua sample app for reference.
Did you add the armv7 and armv6 architectures in your build settings? We had to add both (this was probably back in September of last year when we were building it, for reference)
Are your Library Search Paths and Header Search Paths in build settings correct? For headers we have pjsip/include, pjlib/include, pjlib-util/include, pjnath/include, and pjmedia/include. For Library paths we have all the same (with /lib instead of /include of course)

Related

How to deploy test app on iPhone?

I want to know how to deploy test app on iPhone 4.3.2. with XCode 4.3 but without buying a licence.
I have jailbreak on it and installed AppSync4.0+
The reason why I ask this is because I am porting an app from Qt and I want to see it how it behaves under iOS.
I have been using Qt4iOS and got everything build when using simulator.
Now I want to see it on my device.
When I try it I got some key chain error.
Provide me with some links or ideas.
... everything is possible. It's about the effort needed. And the effort for this can be very low. Especially because your device is are already jailbroken.
You'll need to change Xcode's code signing for building for an device. Instructions can be found here: http://iphonedevwiki.net/index.php/Xcode#Developing_without_Provisioning_Profile
(better save copies of the original files). Since Xcode 4.3 doesn't use the /Developer folder any more you'll have to edit the files inside the Xcode.app (./Xcode.app/Contents/Developer/...)
Build your app for the device. Make sure the target isn't a fat binary (instead just build an ARMv6 executable) or it won't work on your device if pseudo-signed with ldid.
Find the .app bundle for your app
Copy the .app bundle to /Applications/ (not /var/mobile/Applications!!!) (for example via ssh). Make sure the permissions of your executable are set to 755. Reboot or respring and if you did everything correctly you'll be able to launch and test your app.
Have fun!
I have had the same issue.
No matter how hard we try to apply any trick in order to test the app on real device without license, the bottom line is that you can't do it.
You must register with apple by paying $99 and thereafter you can set the device to your real device within XCode before running the app.
Note that it's quite a task to create *.api file even after you are registered with Apple.
Simple: Spend $99 for the iOS developer program.
I'm sure it is much more expensive to waste your time trying to find another way around.

Is ipa file enough for iphone app ad-hoc distribution?

I followed the instructions to generate an ad-hoc distribution file (.ipa) for my app, now I have couple questions
1. do I still need to zip it up with mobileprovision file to give to my tester?
2. would it be possible for other unauthorized people to deploy on to their iphone and run the app? I believe the device UUID should prevent that, but just want to make sure.
You don't need to additionally provide the provisioning profile. Xcode will put it into the .ipa file, if you generated the .ipa with the Organizer.
By default it will not be possible. BUT if someone else has a jailbroken device, it is possible to run the app. Also if the other person has a iOS developer certificate, he can resign it with his own certificate and run the app. But other than that, the app will not run if the device is not part of the provisioning profile.
What VeryVito said. Would also like to add: have you seen Testflight? Makes getting your app to testers a lot easier. And Testflight has a (optional) SDK so you can add various things to your app, like tracking waypoints, etc.
You will need the mobileprovision file as well. And no, others not included in the profile will not be able to run the app.

Windows 7 iTunes does not accept the adhoc ipa file

I am in beta testing stage for an application.
Some of my beta testers use Windows 7 and run iTunes within.
Some of them are just fine but a few observe some rather strange behavior.
That is: Neither the *.ipa nor the *.mobileprivision file can be dragged and dropped into the Apps section of the Mediathek within iTunes. (Doing so the icon indicates that the object cannot be dropped within iTunes)
We tried File/Add to Mediathek ... and that does not work either. No error message but the app does not show up and when adding the mobileprovision file for a second and third time no message comes up that asks whether to overwite the existing mobileprovision file.
I tried google and the search within stackoverflow but did not find anything that matches my problem.
Any suggestion is highly appreciated!
Probably not a direct answer to your question - but a workaround:
Have you tried http://testflightapp.com? Lets you send beta builds to your testers over the air without them having to go through iTunes. And it's free.
No affiliation - just a satisfied user.
Agree with Abizem. Testflight is a good, painless way of sending out builds. If you absolutely have to use the mobileprovision and .app route, just copy the mobileprovision file and do a sync. Check if that is getting added to the device (the UDID in the mobileprovision might be incorrect)
Note: the .app file will appear as a folder on a Windows system. The entire folder needs to be dragged in this case.
If all of your testers use iOS 4 you can drop the two files on your file server and let them open the website from there iOS device. It is really simple and they don't even need a PC for testing:
http://buzzworks.de/blog/announcing-developer-framework-hockey

How to codesign automatically generated iOS apps?

Greetings,
I'm in the progress of writing a web server script that lets you create custom iOS apps (basically exchanging logos and a few other things). The web server customizes a previously uploaded "shell" .ipa and re-zips the whole container to send it to the user's browser. That is: we customize a previously uploaded .ipa on the web server and let the user download it for submission to the App Store.
The next step would be to re-codesign the whole .ipa - because we changed the .IPA contents and the user must use his own signing identity - so that he can actually upload it to the App Store.
From what I understand, there is a "CodeResources" file which contains some kind of hash for each resource file in the bundle, and the executable contains some kind of embedded signature as well. To generate these, you'd have to use the "codesign" utility on the user's computer, then use Application Loader to submit it to the App Store. Correct so far?
What I'm trying to find out is:
Is there a way to codesign the .ipa on the server (with having the user upload his certificate beforehand), so that he does not have any extra work to do?
If 1) is not possible, is there some kind of tool that allows to re-codesign the .ipa without much hassle? Xcode seems to require some project setup work to do just a bit of code signing - if possible at all.
Are there any alternative ways to codesign the .ipa files for the user - possibly without having to manually do it by hand?
Thanks in advance!
Xcode uses the codesign command line utility to create the CodeResources folder and the digital signature, you can invoke it yourself to sign an app bundle outside of Xcode. You could probably automate this on a server if the server was running Mac OS X; if you're really clever you might be able to figure out how to create the signature yourself using openssl (the signing certificates, etc. are all standard stuff). Or, if you can count on the user having the dev tools installed, provide them with an app that automates the signing for them.
Here's a blog entry describing some of the process (though the use case is a little different).
I don't like to answer my own question, but I want to close this after so long.
We ended up using Xcode's targets and schemes to ease up the generation of many different apps. Since we have a reasonable number of app variants, this seems to be OK for now.
Code signing is a mess and Apple constantly changes the technical process behind it - so it's a moving target and requires a lot of hacking and trial-and-error work.

Not loading all content of ipa file into device while using itunes

i developed an app which is meant to read books(pdf book reader).i loaded 25 books(total size of 320MB) into the app using absolute path.all the books are been seen in the simulator and also i can load all the books into my device through xcode(build and run).
my requirement:
when i loaded the above obtained ipa file into the same device or other device which are in ad-hoc distribution using itunes , it is strange that only few books are being seen in the device.
note: i made sure that all the books are present in the .ipa file,i deleted old app in the device which i run via xcode. the device is in ad-hoc distribution.
while code signing i used the iphone developer certificate.
is it necessary to use distribution certificate instead iphone developer certificate which i feel that might be one reason for my problem?
plz anyone suggest me with exact solution to the scenario.
tnx in advance
I know I have seen problems going from simulator to live device. The simulator is not case sensitive, but the device is. Recheck all your actual files in bundle vs what you are requesting when you open the file. They need to match exactly for device, but not so much for simulator.
I would also try seting the apps-Info.plst to have "Application supports iTunes file sharing" on so you could see what is in the documents folder (this is if your moving files in that area).
One problem might be as RAZ suggested that iPhone is case sensitive, but there could be other problems.
For starters I would check the that ipa does contain everything you think should be there. Take the ipa, change the extension to zip and open it. You'll get a folder containing you're app. Right click the .app and choose show package. You'll now see all the files/resources included in your app. If the files that won't load in the app are there then you'll need to provide more information about the problem.
If they're not you need to make sure xCode knows to copy them to the app resources.
You might have resources that you haven't copied into the project, and you're only referencing the files on your hard disk. Then when you make the .ipa file it's not included. Try re-importing all your resources and select "copy to project".