Error in PushWoosh integration - ios

I've been trying to integrate PushWoosh in my project, actually I did integrate it successfully and released apps on the appStore. Now I am planning to release very similar app but with different content. I've done the same lately and the PW was working quite fine with each new duplicated target. But recently the duplicated target causing problem. Gives this Error alert at app startup:
Title: PushWoosh Error
Description: Your provisioning profile does not have any APS entry. Please make your profile push compatible.
I made the profiles Push compatible via the Pushwoosh's auto feature and downloaded then modified profiles and used them for archiving. I'd be very thankful if you guys can point out anything that I need to look at.
[Update]
One thing worths mention that I switched computers while making replica builds. So, in the start all builds are giving the error then at the end after being frustrated I generated whole new distribution certificates for this new computer. Now, with the new certificate and stuff I got my first target pushWoosh ready but then on the the second target gave the same error as above and surprisingly the third target works well with PW. Now I am in a fix that where's what going wrong causing such random errors. Any ideas?
Thanks

Do you have the "aps-environment" string in your mobile provisioning profile? If you don't you have to recreate it in the Apple Development Portal and then make sure there is such a string in a new profile, and its' value matches the gateway you're using in PW, that is "development" for Sandbox and "production" for Production.

I just came up with a different solution to this problem that I hope will help:
My problem was that the name of my app in Xcode wasn't the same as the App ID I had manually created on the Apple Developer Portal. I have 'Automatically manage signing' turned on in Xcode, so Xcode created an App ID automatically in the Apple Developer Portal called XC com paye...
I followed the process of creating the certificates from scratch, added them to the app ID that Xcode created, and voila! It works.
Hope this helps! :-)

Related

iOS app 'The application could not be verified' only on one device

I have two iphone devices( 4s and 5 ) connected to my computer and i am trying to install an application in both the devices. It installs pretty well in iphone 5 but it gives an error 'The application could not be verified.' when attempted to install in the iphone 4s device.
The UDIDs of both the devices have been added in the provisioning profile generated for the application.
Also, to add a note, I have just updated my iphone version to 8.1.3 in my 4s device. I am not sure though if the error has anything to do with it.
Any help on this would be much appreciated. I have been stuck on this for some time now.
EDIT:
I just connected this to another iPhone device and the issue seems to be there again. Basically this means that the app, for some reason, installs only in the phone which I have been using for some time now and not in any other phone. Once again, I am pretty sure that the provisioning profile contains the UDIDs of all these 3 devices.
I had something similar happen to me just recently. I updated my iPhone to 8.1.3, and started getting the 'application could not be verified' error message from Xcode on an app that installed just fine on the same iOS device from the same Mac just a few days ago.
I deleted the app from the device, restarted Xcode, and the app subsequently installed on the device just fine without any error message. Not sure if deleting the app was the fix, or the problem was due to "the phase of the moon".
As I notice The application could not be verified. raise up because in your device there is already an app installed with the same bundle identifier.
I got this issue because in my device there is my app that download from App store. and i test its update Version from Xcode. And i used same identifier that is live app and my development testing app. So i just remove app-store Live app from my device and this error going to be fix.
just delete the app and try again, it happens to me when i try to launch over a device that has the same app but generated by an ipa file.
You probably used the "Fix Issue" option in Xcode when plugging in a new device. Old question but I believe this is the actual answer to WHY this is happening. When you install an app on a device it is signed with a specific development provisioning profile. If, for instance, you plug in another device that is not registered on your developer account Xcode will ask you to "fix the issue". When you press that the device is added and another provisioning profile is created/modified. If you try to overwrite an existing app you'll receive that error. Deleting the app and reinstalling it works since the profile has been altered. I find this often happens when a Team is set and a member plugs in a new device then Xcode "Fixes" the problem.
Might have figured it out... Deleting the app from the device worked for me, as others mentioned before (thanks!).
I think the reason is that the app on the device was actually signed with a separate provisioning profile, specifically a distribution profile in my case.
I faced this issue a lot. I am not sure if this is the issue, but I think, when xCode saw that there is an app with the same bundle identifier as of the app, I am trying to install, it didn't allow me. So, I had to delete the older one and attempted to install and it worked. However sometimes for testing purpose, I needed multiple version of the same app and in that case, I would change the bundle identifier and try to install. It only works if, I am using an wildcard provisioning profile.
To others not using RubyMotion and don't think that deleting the app is acceptable (as in, you want to do upgrade testing). Check out the bottom of these docs from Apple:
https://developer.apple.com/library/ios/technotes/tn2319/_index.html
It looks like they changed something in 8.1.3 to check for this new rule.
The Fix
"[Add] the installed application’s application-identifier value, as logged in the second parentheses, to the previous-application-identifiers entitlement’s array value for the app being installed (by resigning it or re-building it) and requesting new special provisioning profiles as shown below."
<key>previous-application-identifiers</key>
<array>
<string>{Your Old App ID Prefix}.YourApp.Bundle.ID</string>
</array>
EDIT:
In order to do this, you need special provisioning profiles. You can request these from Apple:
"To enable signing with the previous-application-identifiers entitlement new special provisioning profiles are required that can be obtained by going to the Contact US page and requesting them." (from the docs linked above).
Had the same issue on my iPad running 8.1.3 Deleting the app and installing again fixed the issue. I use two different provisioning profiles on two different machines and that could have caused this issue.
Working & tested solution, which does not require to delete application:
It looks like AppStore Distribution Provisioning Profile or just iOS Distribution certificate have special permissions and "Could not be verified..." problem does not apply to them. They will always override previous certificate.
In other words: AppStore release will install successfully, even if already installed (testing, adhoc or enterprise) app has been signed by the certificate from different team.
If you are lucky and have previously uploaded app to the AppStore account owned by the same team as in certificate you have a problem with - then things are very simple: just download & install app from AppStore.
When it installs - app certificate will be the same as the one you want to test with and problem goes away.
If your app is not on the AppStore yet - iTunesConnect beta comes to the rescue:
Disclaimer: I did not tested this but since cert an prev are the same as AppStore release, I bet it works:
Archive your app with AppStore provisioning profile (iOS Distribution cert) and upload to iTunesConnect (to the account owned by the same developer team as included in the provisioning profile not you want to run).
Invite person with the device you want to run on (yourself?) to beta test.
Download & install the app from iTunes connect beta.
Now you are able to install your testing version.
The application could not be verified" , in your device there could be already an app installed with the same bundle identifier.
So Simple solution Just delete the App & try again..
....
TL;DR answer - There is no real solution besides "delete app and reinstall".
This answer is not satisfactory for many situations, when you have an existing database that needs to not get deleted within the app.
Lukasz and plivesey are the only ones with solutions that don't require delete, but neither worked for me.
I resolved this issue by changing the Build System to legacy in xcode.
I had the same problem but the mentioned solutions above didn't work for me. Even I had no previous app on device, I got this error when deploying on my device.
How to do:
Simply, go to menu File > Project Setting, inside Share Project Settings, change Build System from "New Build System (default)" to "Lagacy Build System".
I also encountered the same issue. Deleting the app didn't work, but when I tried deleting another app which was the current one's 'parent'(I copied the whole project from the previous app, modified some urls and images, then I clicked 'Run' and saw the unhappy 'could not be verified' dialog). Seems the issue is related to provisioning and code signing and/or some configurations of the project. Very tricky.
I had changed the team but I forgot to change it in my Tests target it so it caused that. Maybe this helps someone.
Just had the same problem and I found out that the issue is with expired certificate.
My app was distributed (AdHoc) through firebase and few days ago app was working just fine.
Today I've realized that I can't install it because 'The application could not be verified'.
Finally I realized that certificate that I was using for app signing has expired 2 days ago.
You need to upload it again and you'll be able to install it.
I had the same problem. But, I realised I was using a single plist with (debug) and (release) configuration, like this.
So, I changed few things..
Keeping a separate scheme for (release).
I added a new scheme for development purposes.
Edited the new scheme > run > Build Configuration > and set it to (release)
Generated a new archive using the new scheme and voila!!..
I'm able to install on all my devices.
My case:
jailbreak'ed iPhone
Final solution:
Install tweak AppSync Unified via Cydia
to bypass signing/certificate verification
Same issue occurred for me when I was installing through link. I tried to install using different link. Then I could install the app.

Xcode 6.1.1 - Developer ID is not on any development teams, when it IS

We had to change our development ID (apple ID) due to a change in email addresses.
We changed the email in the dev portal and via Apple ID.
Everything seemed fine - we could log into the portal and iTunes Connect and see our apps/certificates etc etc for the iOS dev team.
Tried to build our app, however, and Xcode seems to have other ideas, claiming that our (now new) Apple ID is not part of a development team!
The below are the steps we've been using to try to resolve the problem, to no avail:
Removed all certificates from keychain
Also removed any saved login-passwords from keychain
Went to Apple Member Centre, entered with new email address now being used for development.
Navigate to iOS Dev Centre
Navigate to Certificates
Downloaded Development and Distribution certificates (note that we did create brand new certificates)
Moved certificates from 6 into Keychain log-in
Download Provisioning profile (not sure why - can't seem to do anything with it since it looks like Xcode manages this itself)
Opened Xcode, go to Prefs > Accounts
Added account using new Apple ID
Account is added, however, it shows under the ID "xxxx#xxx.com is not on any development teams"
We have repeated the above steps (including reboot of mac) over and over again, with no changes. This is our development account (i can log into dev centre and iTunes connect fine and see our apps etc)... but Xcode tells us it isn't ><
Hope someone can shed some light on this, as we're all out of ideas here.
Cheers
I would either contact Apple or reboot your computer.
If those don't work, comment here for more help.
WHY DIDNT WE DO THIS FIRST?!
A lesson for us for the future.
We're using Unity to develop our app.
All we needed to do to resolve the issue is create a brand new build (we deleted the old one), rather than just do an amend build through unity.
Creating a fresh build resolved this developer ID issue.

no valid 'aps-environment' entitlement string found for application while debugging on xamarin for ios

I am working on xamarin for ios.
Its was working on my older machine. But, then i had to switch to new machine and recreate all the certificates and everything for the new machine.
I have created the app ID. Then created the aps certificates and then created the provisioning profile.
In Debug I have provided the downloaded provisioning profile. But still I am getting this same error. And my app is unable to get the device token.
I am searching a lot since last night. And have done the following things with no success:
Regenerating provisioning profile and trying with the new one
I also deleted the app id itself. Recreated everything from start. All Certificates, app id, provisioning profile
Deleted all the provisioning profile from my system and device. Created new profiles and installed them.
Above are three most common solutions i found in my searches, but to my dismay nothing is working for me.
If you have any idea please throw at me. I am in a great need for that. Its holding me from submitting the app.
Please help.
The problem was xamarin studio itself. It seems that after updating form stable 5.2/5.1 version to 5.3 this issue surfaces. So i deleted the app and installed it again which game me v5.2. Now i am not udpating till i publish my app.
This link is full of people facing this problem:
http://forums.xamarin.com/discussion/22502/xamarin-studio-5-3-push-notification-error
did you add the App's Development SSL Certificate to your keychain? when enabling push notifications for the App ID you should generate a Development SSL Certificate for the App, download it and add it to your key chain.

iOS & XCode5 App publishing fails - Error ITMS-9000: "The binary you tried to upload was invalid"

I was already looking through some other threads here with the ITMS-Error 9000, but they didn't help me to get my App passing the submission to the App Store.
I have NO errors or warnings inside XCode.
The App is perfectly working on iOS Devices & Simulators.
EDIT: What I have already tried:
Changed Deployment Target from iOS 7.1 to 7.0
Checked the Bundle ID in iTunesConnect and inside Xcode
Checked for any errors and warnings --- removed / fixed them
Do you have any additional ideas what it could be? Without any errors or further information it is hard to find out what the reason is.
UPDATE2::
If I try "just" to "Validate" instead of "Distribute" in the organizer after Archiviing it i get the following Error
Its an Issue with Apple's Server I tried validating the app it said "Unable to process app at this time due to general error" a quick search about it on SO said its got nothing to do with our code or project but some process running at Apples server
Assuming that your binary icons does not meet as per apple's human interface guidelines.
It most probably seems to be the issue with the profile you are signing your app with. You got to make sure that your are signing the app rightly with proper distribution profile. Also check out for the bundle identifier and make sure that it is same as the one you have given in itunes connect.
Check this link!
You should be creating the binary with the simulator or some device connected.
Try it:
Unconnect iOS device from your Mac,
Dont select any simulator, just leave it as it is, iOS device option
Archive it
Publish it
Make sure you're using a provisioning profile for the App Store (not for Ad Hoc distribution)
Then select this profile when building your app.
I would guess this all has something to do with Apple making system changes to prepare for iOS 8 and in doing so somethings got broken.
The issues look to have just been resolved by Apple. I just successfully submitted an app that was previous showing the same problem you had. If you look at your Provisioning Profiles, you should notice that Apple has removed your app's previous Distribution Profiles.
To get your submission working again, all you have to do is recreate your App Store and Ad Hoc provisioning profile, but make sure to use a new name and you should be good to go. You were not alone on this one. A bunch of people experienced the same problem and there were a lot of posts about it on the official Apple Dev forums.
Please check the Distribution Profile that you are signing your app with at iTunes Connects. make sure that it is still valid. I had same issue couple days back and after a struggle , i found out that somehow my provisioning profile was not valid anymore. Creating a new profile and submitting app with it solved my issue.
Apple have deleted corrupted provisionning, you just have to regenerate it and make submission works again !
Connect to your iOS Developer
Certificates, Identifiers & Profiles
Provisioning Profiles / Distribution
Here you can see some certificates missing. You have to re-create (Distribution / AdHoc). Note, you have to change certificates name !
In Xcode, refresh your certificates, set the right one in Build Settings, and submit...
I called today the Apple Developer Support and i get one very very simple answear to this issue.
You have to create all your certificates, provisioning profiles etc with Apples SAFARI browser.
It is not working "always" proper with Mozilla Firefox or other Browsers. So if you get such an error, try to recreate it with Safari! It worked like a charm!

Having trouble deploying ad hoc testing version of iOS app

I'm new to iOS development and I'm having a bit of an issue deploying something for my client to test. I am using XCode v4.3.2. I was given an xcode project, and asked to make some minor coding changes, mainly to get my feet wet. I made the changes, compiled the app, ran it in the emulator, it worked fine. I tethered my iPhone to the macbook and followed apple's instructions to set up my phone as the dev phone, ran it from the phone, no problems.
Now the part I need help with. The company has a development license with Apple. They sent me an invite through Apple, which I accepted, which generated an Apple dev license for me. The project I took over had a bunch of code signing keys associated with it, that were all expired, so I switched over the keys to the one that was generated for me. I archived the project, and then saved it for adhoc/enterprise, which generated a .ipa file. They tried to load the ipa onto an iPod Touch (which the project has previously worked on) and it generated an error saying that it didnt have entitlements.
I checked Stackoverflow and found an article that stated how to add entitlements, so I followed them, and now in Code Signing Entitlements (in the Build Settings) it says : [ProjectName].entitlements (where the [ProjectName] is the actual project name :) ). I reaarchived and sent to her, and she tried to load the new .ipa. Now on the sync, she gets "not installed on ipod because an unknown error occurred (0xE8003FFE)".
This is driving me nuts... what am I doing wrong? I have the device ID for her iPod, just in case, do I have to set up some specific "thing" for her as an adhoc tester? I figured it would just work.... Please help!
I would suggest you have a look at
https://testflightapp.com/
It is an easier way to distribute builds to your clients and testers.
I use it regularly and it saves a lot of headache...
We use hockeyapp.net with great success. We've been using this for quite some time and our clients love the simplicity of OTA beta distributions.
Another company worth investigating is www.appblade.com. If you want a solution that blends iOS with Android and other platforms it works well. Testflight has been migrated into iTunes Connect.

Resources