- This topic has 9 replies, 4 voices, and was last updated 8 years, 8 months ago by
support-swapna.
-
AuthorPosts
-
Using version ā2015 CI December 10, 2015ā on a Mac
Using either embedded PhoneGap or v 5.3.9 runtime, I cannot sign an iosApplication (local build).The āBuildā phase is successful, but the signing just fails with cryptic errors š
1. Certificates and keys Iām using (in Keychain access) are ALL managed by XCODE.
2. Provisioning profile (a distribution profile) was created in Apple Developer Center and downloaded.
3. I can sucessfully build, sign and deploy a NATIVE application (using XCODE) using the certificates above, so I donāt think there is anything wrong with them.
4. Beacuse I want to use the certificates that XCODE manages, I export the cert and key to a .p12 file for use in myEclipse.
5. I am sure myEclipse can access the .p12 file as it recognizes the password I have given the file during the export from Keychain. (The signing profiles are invalid if the password is messed up, so Iām sure itās reading this file ok)
6. If the file has a password, I get this error when attempting to sign (after a successful build) ājava.security.InvalidKeyException: Illegal key sizeā
7. If the file has been exported without a password, the error is āError 1ā. Nice !!!!!!
8. I found these in the logs which are the stack traces corresponding to the two flavors of errorsjava.io.IOException: exception decrypting data ā java.security.InvalidKeyException: Illegal key size
at org.bouncycastle.jce.provider.JDKPKCS12KeyStore.cryptData(Unknown Source)
at org.bouncycastle.jce.provider.JDKPKCS12KeyStore.engineLoad(Unknown Source)
at java.security.KeyStore.load(KeyStore.java:1214)
at com.genuitec.eclipse.mobile.common.signing.ApplicationSigner.extractAliasesFromP12(ApplicationSigner.java:251)
at com.genuitec.eclipse.mobile.common.signing.ApplicationSigner.signApplication(ApplicationSigner.java:138)
at com.genuitec.eclipse.mobile.phonegap.core.build.PhonegapLocalBuildJob.run(PhonegapLocalBuildJob.java:183)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)java.lang.RuntimeException: Error 1
at com.genuitec.eclipse.mobile.common.utils.RunExternalProgram.execute(RunExternalProgram.java:65)
at com.genuitec.eclipse.mobile.common.signing.ApplicationSigner.signApplication(ApplicationSigner.java:115)
at com.genuitec.eclipse.mobile.phonegap.core.build.PhonegapLocalBuildJob.run(PhonegapLocalBuildJob.java:195)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)In either case, this is at the ābottomā of the console output :
** BUILD SUCCEEDED **
Command finished with error code 0: /Users/*myUserIdInHere*/Bitbucket-Repositories/hellocontacts/HelloContacts/platforms/ios/cordova/build ādebug,ādevice
completed ācordova build ios ādebug āverbose ādeviceā
signing application.then is just craps out with the error !! š
One other āfishyā looking thing (The permission denied thing) at the top of the console (when the build starts) is :
Build of HelloContacts started for ios
executing ācordova platform add iosāā¦
Creating ios projectā¦
Installing āorg.apache.cordova.contactsā for ios
Installing āorg.apache.cordova.fileā for ios
execvp(): Permission denied
completed ācordova platform add iosā
executing ācordova build ios ādebug āverbose ādeviceāā¦
Running command: /Users/peterbyrne/Bitbucket-Repositories/hellocontacts/HelloContacts/hooks/before_build/androidmanifestmapper.js /Users/peterbyrne/Bitbucket-Repositories/hellocontacts/HelloContacts
Itās saved!I have no clue whatās going on here, and must admit to getting frustrated with my inability to build what is nothing other than a āHelloWorldā proof of concept application.
If anyone has any clues for me, Iād be most grateful.Thanks
Peter.
support-swapnaModeratorPeter,
Sorry that you are seeing this issue. I have escalated it to the dev team for further investigation. They will get back to you soon.
Thank you for your patience.
āSwapna
MyEclipse SupportSwapna,
Thanks for the reply.
Havenāt received any other tips so Iām stuck šIām disappointed actually. I really wanted to use myEclipse, but now I really have to reconsider my measly little $70 subscription, as what I want this product for simply doesnāt work.
This is a good IDE but doesnāt work as advertised for my requirements.
My simple test is to build and install a Hello World on both Android / iOS . I need to see if the tooling in the product actually does what it says it does. Nope. I canāt get it to work (Android is fine btw).Iām going to look at some other products. š
I had a look at the Intel XDK. It has a huge advantage over myEclipse for Mobile app development, because thatās all it does. š But you know what? It works out of the box. š The proof of concept that Iāve been struggling with in myEclipse for weeks was done in 2 hoursā¦ Thatās what I want. I need to be thinking about my app, not why the tooling of the IDE doesnāt work.The documentation / comments in the XDK and the sample code are unbelievably good.
If they actually charged for the product, Iād buy it, but itās free.. šIām hoping perhaps at least one other dev dude out there has actually been able to successfully get this signing thing (iOS) to work. Perhaps if I just got a āhintā š that this is doable in myEclipse I might try and pursue it.
Barring that, Iāll just go somewhere else.
Good luck with the product SwapnaPeter.
Brian FernandesModeratorPeter,
Apologies for the delayed response and Iām sorry you had a disappointing experience with MyEclipse.
The problem with this tooling, as you experienced first hand, is that it depends heavily on a number of external factors; for local iOS building on OS X, your XCode environment (version, settings, etc.) are important. With Android, itās the version of the Android SDK installed. Of course, it naturally depends on the version of PhoneGap youāre using (if you choose to use an external version of PhoneGap), and if you build remotely, itās dependent on Adeobeās PhoneGap build service.
Of course, this is a bug in the product, and weāve tried our best to have the tooling work with as many external configurations as possible, but sometimes it just wonāt work, as in your case.
In MyEclipse 2016 weāll be taking a new approach to supporting Mobile development, clearly the current approach isnāt as robust as it needs to be. While MyEclipse failed to ultimately build your application, we do work hard on allied tooling, like JavaScript, debuggers and even GapDebug which will allow you to debug directly on device.
Weāre appreciative of the constructive feedback, despite your experience with MyEclipse, and hope youāll give MyEclipse a chance again. MyEclipse 2016 CI 0 does not include any mobile tooling, but we will have a solution developed when we release MyEclipse 2016 Stable 1.0.
Hey Brian,
Thanks for the thoughtful and honest response.
Yes, this has been frustrating for me, so I can just imagine what itās like for you guys !!The idea of local builds, and the way myEclipse has been architected to plug into external dependencies (XCode, Android SDK) is a noble idea, but itās just too fragile.
In frustration, I even went down the Visual Studio route, with itās Mobile tooling as they take a different tack, (and assume youāre a complete idiot and include the
Andriod SDK as part of the tooling. What a mess. I didnāt even get into the iOS complications ā¦) That whole experiment was a total fail !!!Perhaps remote builds are the way to go with this, I donāt know. Thatās how I was able to so quickly build and deploy something using the Intel XDK.
I just would like to have the ability to do this locally as well. Iāll most likely do a deep dive into the CLI (Cordova) and actually try and get this to work still šYes, I appreciate the GapDebug stuff and all the debugging functionality you have. Thatās why I wanted this to work š
Youāve earned my subscription for another year, simply by taking the time to respond to me.
Letās see what happens in 2016 šThanks Brian
Peter.Hi Peter,
I have been successfully designing apps with MobiOne and building remotely using MyEclipse and Phonegap with very few problems at all. I did notice that you say Xcode is managing your certificates, I donāt know much about Xcode but I thought it only managed development certs, perhaps you need a development provisioning profile to sign your app. I dunno, just a thought. Perhaps I can help you out. my email is stickleback at outlook.com.auThanks Paul,
Yep, the remote build thing is not a problem for me either. Itās if I want to build and sign ālocallyā that Iām having grief š
Why do I want to build locally when there are all these cool cloud build server things going on? Just a control freak I guess š
And being a geek at heart, I really want to try and understand whatās actually going on ā¦..Local builds and deploys for Android are fine.
Local builds for iOS are fine, but will croak during the signing.Yes, I thought that perhaps the certificate thing was the problem as well, but Iām sure itās not.
A Team Provisioning Profile will allow me to use a Developer Cert and deploy to my iPad using XCODE. (and I can do that no drama there).
If I want to build (an ipa file) and sign it so that it can be deployed via iTunes (local) or whatever, I need an AdHoc Provisioning Profile (that actually identifies my iPad as
legit device). With that profile I need to use a āDistribution Certā. (and I can do that no drama too)
Iām pretty happy I have my head around all this Apple mumbo jumbo now šThe grief Iāve had with myEclipse (which I really like for other dev work btw) has made me look at simple CLI Cordova development.
Thatās really where Iām heading.I have the latest Cordova ( 6 ?? ) on my Mac and can build, sign, deploy whatever I want : iOS or Android (Of course, XCODE is required as well and the Andriod SDK (via Android Studio)
Iām starting to think now that I was making this way more complicated than it needed to be.Sure I can use GapDebug, etc etc for debugging if I need, but the tooling I need to actually get something built and deployed ājust worksā with CLI.
So maybe Iāll just turn into a NotePad/TextEdit/CLI guy !!!!!!!
Thanks for the offer to help me.
Nice to hear from a fellow Aussie ???Iām over here in the States (Portland Or), but thatās probably too much information on a Genuitec Forumā¦ š
See ya Paul
Peter.
Brian FernandesModeratorYep, the remote build thing is not a problem for me either. Itās if I want to build and sign ālocallyā that Iām having grief š
Why do I want to build locally when there are all these cool cloud build server things going on? Just a control freak I guess šI totally understand what you mean about wanting to build locally ā been there, done (and still doing) some of that myself š
Itās good to know that the remote build did work for you ā given what youāve said about XDK, I wonder if youād have a better opinion (and experience) of MyEclipse if we simply did not have a local build option at all and just forced you to use remote build?The grief Iāve had with myEclipse (which I really like for other dev work btw) has made me look at simple CLI Cordova development.
Thatās really where Iām heading.Glad you like MyEclipse for the other bits, and, interesting thoughts on the CLI ā that just might be the direction in which we head for Mobile support. MyEclipse 2016 already includes an integrated terminal view allowing you to use a local console from within MyEclipse (itās just that for now).
Hey Brian,
Yep, Iām thinking the simpler the better.
Take one extreme ā Visual Studio ā and attempting to bundle EVERYTHING with VS to do local builds. Total train wreck. Iāve tried.
Middle of the road ā MyEclipse ā Use preexisting SDKās (Android Studio or just the SDK on itās own), Xcode etc and try and make them work together. Andriod? yes. iOs? train wreck š
I do see that PhoneGap runtime is included, but you try at least allow us to use an external version if we want. Still a sort of train wreck though.
Take the other extreme ā Intel XDK. āDonāt bother with local builds because itās too hardā Works like a dream šIām thinking half the battle here is simply setting the customers expectations, so I would blow the whole local build thing totally off !!!! š
Itās simple to do the builds using the CLI.You certainly would not lose my business because youāre honest that this functionality is flaky and so we wonāt even try to do it. Iāll buy the IDE for all the other cool stuff. š
If you could architect a solution where you could create a project āover the topā of an existing Cordova project (with clobbering anything in config.xml and all that jazz) then you would be
on to something (at least in my opinion).See ya Brian
Peter.
support-swapnaModeratorPeter,
MyEclipse 2016 Stable 1.0 release is now out.
Please check this announcement about PhoneGap support in MyEclipse 2016 : https://www.genuitec.com/forums/topic/phonegap-support-in-myeclipse-2016/
Refer to the Migration guide linked at the end of the announcement to migrate your PhoneGap project from MyEclipse 2015 into MyEclipse 2016 and continue development using the PhoneGap CLI.
You can download the MyEclipse 2016 Stable 1.0 installer from here : https://www.genuitec.com/products/myeclipse/download/
Please install MyEclipse 2016 to a different location alongside your existing MyEclipse installation and use your current license which is valid for MyEclipse 2016 as well.
Thank you for your patience.Let us know if you have any questions or if you see any issues.
āSwapna
MyEclipse Support -
AuthorPosts