I want to public my App. Some people test my App with TestFlight. The Push Up Noticication works very good. Now i read the "Ionic & Capacitor SDK Setup" again and there is one ponit that makes me confused. https://documentation.onesignal.com/docs/generate-an-ios-push-certificate
The Push Up Certificate is required but it works without.
My guess: It works, because the App is downloaded from TestFlight (?). If i download the App from the App Store, the push up Noticication without the Certificate doesnt work? Or i need the Certificate just for security?
Push certificate is required for IOS.
You can simply use this tool. https://onesignal.com/provisionator
Then continue with step 3.
Related
So I'm developing one application with Ionic 3 and we had some problems to test push notifications and generate one test version for iOS users.
Recently Ionic View was removed from Apple store, and same with the Ionic View in the apple store we had some problems to test push notifications, I know that Apple has TestFlight and we think that we can use TestFlight for our iOS users but I don't have one mac but I have Ionic Pro.
My doubt is that "Can I use Ionic Pro to generate one version to use in TestFlight without one MacOS?"
You can use Ionic Pro to do most of what you're looking for, EXCEPT creating the proper .p12 certificate file. As far as I know, you must use a Mac for that. Fortunately, that's a one-time process, so you can perform other aspects of the build process within Ionic Pro.
So, basically you need to create your .p12 certification file on a mac, and
upload it to Ionic Pro -> Settings -> Certificates. You can then build .ipa files with proper credentials in the cloud. Then... you have to upload the ipa file to the app store, and distribute it via TestFlight there.
Another option: There is a pay-as-you-go Mac cloud account service (https://www.macincloud.com/) that might be perfect for what you're doing, specifically since you either only need to create the certificates (at best) or you'd only have to use it when you were creating builds and uploading them via XCode Application Loader. (at worst) Perhaps that's something that you might want to explore? I will say, it is much easier doing that kind of development directly from within a Mac environment, unfortunately.
I understand Swift is a new language and I also understand what Beta means but still it is possible and necessary to test deploy newly creates apps on the phone without updating it to iOS8.
However when I tried to use the TestFlight service, as I have done in the past (I know Apple has acquired the company), all works great until TestFlight tries to install the app on the phone. At that time one receives an error message ..."cannot be installed at this time" ...
Does anybody have an idea how I can make TestFlight work or have a viable alternative so I can test my app on the phone of somebody remote.
Any insight is highly appreciated.
Export the IPA as you normally would, making sure that you use your AdHoc provisioning profile for the release (in the build settings).
Then here's the workaround to get it to work with testflight.
Open a terminal and go to the directory where the IPA lives
ditto -xk myapp.ipa /tmp/myapp
ditto -ck --norsrc /tmp/myapp ./myapp-after.ipa
rm -rf /tmp/myapp
Upload myapp-after.ipa as your TestFlight build.
Ok now I have a problem with the push notifications. I have set them successfully for the developing part and I was receiving them on my device. Now I have the application on app store and I cant receave notifications.
This is step by step what I did:
-I have created a provisioning profile for distribution and connected it to the app id that has push notifications for distribution and development.
-I have built the app for distribution with that provisioning profile.
-I have submitted the app on app store.
-Now I have 2 certificates in keychain access Apple Production IOS Push Service:AppID and iPhone Distribution:CompanyName
-I have made .pem file from both and tested it with both. No notification has arrived
I really have no idea what to try and how to fix this.
I have had similar problems, just a few weeks ago. For me the case was that I had several provisioning profiles left in xCode. So what I needed to do was:
Go to Organizer -> Devices -> Provisioning Profiles
Select my distribution profiles for the app in question, and delete them.
Go to developer.apple.com/iOS
Go to the distribution profile, modify it.
Just clicked "select all" (so I could re-save it with no changes), somehow the profile needed to be re-created AFTER enabling the Push certificate
Download the new profile and install it to xCode
Clean project under Product -> Clean
Now I made a new release and tested it and it worked. Maybe this workes for you as well.
Edit
The red-thread in this answer is that when Push notification in the App is enabled, the provisioning profiles need to be re-done (even though, to the eye there are no changes).
If using Parse, make sure you have uploaded your iOS Production Certificate. I ran into this issue and discovered a week later that I had only uploaded my iOS Development Certs to the server.
Settings > Push > Apple Push Certificates
You need to see something that has a Certificate Type of iOS Production with a valid expiration date.
I'm building an iOS app that uses push notifications, and I'm finally ready to submit it. Before I do, I'd like to test out push notifications off the Production server, to make sure everything is working correctly. Thus far, the sandbox environment has been working fine.
After doing quite a bit of searching, I learned that switching the servers over from ssl://gateway.sandbox.push.apple.com:2195 to ssl://gateway.push.apple.com:2195 wasn't enough, and that production push tokens are different from sandbox push tokens. Instead, apparently I need a new provisioning profile with Production entitlements, new certs installed on my server, and to re-build my app with said profile so that it knows to create the correct push tokens.
So, after going through all the steps, I can't even make a build run on my phone; XCode says
This profile cannot be installed on devices
Here are the steps I've taken. If I'm missing something please let me know:
In my iOS Developer Center, I've made sure that my AppID is "enabled for production" under the Apple Push Notification Service.
Also in my iOS Developer Center, I've created my Production Push SSL Certificate, gone through the necessary conversion steps, and installed the resulting .pem on my server.
Per the instructions, I've create "a new provisioning profile containing the App ID you wish to use for notifications." I've done this by going to Provisioning, and clicking on the "Distribution" tab, and making a new profile. I've confirmed that "production" is set under the "entitlements" section of this profile.
I've selected the provisioning profile in my project settings. I get the message
This profile cannot be installed on devices
and I'm stuck.
Build an ad-hoc distribution version of your app, and install it on your own device. That will use the production APN gateway and certs.
You cannot install an app compiled with a appstore distribution (production) profile on a device. Only Apple reviewers can do that. you can only test push on an app compiled in development mode and using sandbox server.
If you want to test production servers, you must compile the app using an AdHoc distribution profile enabling the devices you want to do the test. Clearly you must recompile and the send the app for review using the App Store distribution profile.
So we have a problem with our app. We put push-notification in, and it works flawlessly in development. Then, once we got on the app store push no longer works. By looking at our server logs it looks like the the registration call is failing and not getting a device token.
Has anyone encountered this before?
Cheers,
Did you create a production push notification SSL certificate? This is most frequently the cause. Applications signed with a development provisioning profile will not work with a production push SSL cert and applications signed with a distribution provisioning profile will not work with a development push cert.
Also, you can create an ad-hoc distribution cert and use this to test your distribution provisioning profile. Since you can't run the build you send to Apple for distribution, I'd strongly encourage you to make an ad-hoc distribution build and confirm that push notifications work in that installation.