Post

Replies

Boosts

Views

Activity

Reply to Installing apk on i-phone 15.5 by Itunes
Hey @anveshkamboj, Thanks for providing this additional information! Hopefully the link to the EMM site above will help with capturing the logs from Windows. Apologies that I am not a Windows user and able to help, but hopefully someone else will jump in! In order for the IPA file to be installed successfully on your iPhone, it needs to be code signed with your device UDID in the Provisioning Profile unless it is an Enterprise signed application. Do you know how the IPA file was signed? Below are the steps to figure this out if you or the developer do not know how it was signed. Unzipping the IPA file to see its contents unzip -d /New/Directory /Path/To/IPA.ipa Displaying the contents of the Provisioning Profile cat /New/Directory/Payload/*.app/embedded.mobileprovision If you see a section in the resulting output that shows "Provisioned Devices" then the application is either Development or Ad-Hoc code signed and if you did not provide your UDID to the developer you will not be able to install without signing it yourself or with the help of the developer. If you see a key value pair that indicates ProvisionsAllDevices, then the application is Enterprise signed, but the developer will need to update their code signature following the guide from Apple provided at the link below (same as above), or alternatively, you can sign up as a developer and go through the code signing process yourself which is a fun learning experience. https://developer.apple.com/documentation/xcode/using-the-latest-code-signature-format One thing to note is that if you go through the code singing process yourself, it is likely that the functionality of the application may break, so you will want to check with the developer who provided the IPA file and make sure they know you are doing this and if they know of anything that would stop working. Hopefully this helps and happy coding!
Jun ’22
Reply to Is there any API to use Transporter services?
Hey @adriannanin, Thanks for posting on the Apple Developer Forums! I would suggest leveraging altool which is installed as a part of the Xcode Command Line Tools. As long as Xcode is installed, you will be able to find out more information on how to leverage this using the man page by opening Terminal and entering the below command. This one command line tool has so much power and should have a wealth of information to learn from along with search the internet on various implementation models. man altool I would recommend leveraging the App Store Connect REST API authentication method instead of user tokens, but user tokens are still valid if you would like to leverage them. I would also recommend always validating your applications before uploading them, but this is a legacy practice and not a hard and fast rule. If you have not heard of a tool like Fastline, there are many tools like it that support automated uploading to App Store Connect, but if you have unique needs or additional security concerns, writing your own solution may be of more value. https://fastlane.tools Hopefully this helps and happy coding!
Jun ’22
Reply to Installing apk on i-phone 15.5 by Itunes
Hello @anveshkamboj, Thank you for posting on the developer forums! If you are able to gain access to the iPhone and a Mac computer, you would be able to open the "Console" application and read the console logs as to why the application is unable to be installed. While I am not a Windows user, I recently saw an article that talks about how to get logs from an iPhone using a Windows machine. Below is the link to that article (as long as it does not get redacted). I cannot guarantee that this works so try at your own risk (I would suggest getting a Mac personally). https://emm.how/t/how-to-capture-ios-console-logs-on-windows-pc-ios-11-compatible/627 However, the error message that you are receiving generally relates to a code signing error. It is hard to know the exact error without being able to confirm through the logs, ut the below Apple article talks about how to leverage the latest code signing format if you are signing the application outside of Xcode. https://developer.apple.com/documentation/xcode/using-the-latest-code-signature-format If you are leveraging Xcode to generate the IPA file and you are leveraging a legacy version of Xcode, you may need to code sign the application AFTER your export from Xcode, install a more recent version of the Command Line Tools for use, or change the settings in the "Signing" section of the "Build Settings" for the target inside of Xcode before exporting. Hopefully this helps and happy coding! Looking forward to any feedback!
Jun ’22
Reply to 'The code signature version is no longer supported' error
Hey @DanDudeDev, Thanks for posting on the developer forums! Would it be possible for you to indicate how you are attempting to install the application on the device? Is this directly through Xcode, or via an exported Archive? It would also help to know the version of iOS installed on the mobile device in which you are trying to install the application so that we can attempt to replicate the issue. The first thing this makes me think of is the below post from Apple. https://developer.apple.com/documentation/xcode/using-the-latest-code-signature-format However, if you are using Xcode, Xcode SHOULD be leveraging the latest code signature when signing. If you have multiple versions of Xcode installed, this may not be the case though depending on the Xcode Command Line tools selected. You can check this by going to Xcode --> Preferences --> Locations --> Command Line Tools and making sure that 13.4 (13F17a) is also selected here. If this does not help, we might want to look at each of your project targets and the Signing section under Build Settings to determine if there is anything set that could be causing the issue. Hopefully this helps and looking forward to your feedback! Good luck!
Jun ’22
Reply to Problem with App Store Connect APIs. Able to apply GET method but not POST and PATCH
Hey @joestone, What happens when you remove the Content Type header and the body data from the request to look like the below? curl --request DELETE "https://api.appstoreconnect.apple.com/v1/appInfoLocalizations/{APP_INFO_LOCALIZATION_ID}" \ --header 'Authorization: Bearer {TOKEN}' \ I am able to successfully hit the API and remove a localization when making the above request. I think it could be due to the fact that when you are making a DELETE request, the endpoint is not expecting to receive any data as a part of the request and interpreting it as something that is not supported (specific to Apple where other endpoints may support data in the body). Hopefully this helps and we can keep digging in if this does not solve it! Happy Coding!
Apr ’22
Reply to Built App location
Hey @IntelJohnny, Is it possible that the answer is as simple as changing the "destination" in your Export Options from "upload" to "export". It sounds like by "package up", that is where you are looking to take the application file, put it into an installer and then use the notarization service, but if you can share more information on what the goal is we will do what we can to help! Hopefully this helps!
Mar ’22
Reply to Unable to authenticate for Developer-ID app export with API Key
Hey @jamfshome, I do not have much experience with Mac applications, but are you using an export options plist that has the UUID of a profile that should be found in the local store during the export process or some other method? Is the goal to have Xcode 100% automate everything on its own, or are you able / willing to have something like a helper script running in the local environment? Using the API Key approach assumes that you have the API Key in every environment where builds would be happening, but don't want to make any assumptions. Thanks!
Mar ’22
Reply to What should the mechanism to send new version in Apple Developer Enterprise Program
Hello musmanzpak, Thank you for asking this question on the Apple Developer Forums! There are many ways to accomplish what you are looking to do, some including Apple tooling, but nothing out of the box that the Enterprise Developer Account provides to accomplish this. Below are some thoughts on how to go about accomplishing this along with protecting your Enterprise Developer Account to ensure that it does not get used outside of the Terms and Conditions. Use an MDM Solution The best way to accomplish what you are looking to do in my opinion would be to use an MDM solution. It will provide you with authentication and protection of company resources on top of sharing a link for employees to access the IPA file for installation (not sure if you are using OTA based off of what you have shared). If you go down the route of MDM, I would at that point suggest also switching from Enterprise applications to Custom Apps as that will save you copious amounts of time in the long run from a management and ensure your development teams are not building technical debt. Use Push Notifications A simple way to do this would be to leverage Push Notifications if they exist in the application and sending a Push Notification that says something like "New App Version! Tap to Download!" and having the notification open a URL where your OTA file is waiting to install the application. I have some of this implemented and it works well because you should be able to target users based off of their installed application version. Build a Custom Solution (Caution) Another option would be to build a custom solution that "lists" internal content that can be downloaded by Employees (Read Apple Enterprise Developer Terms and Conditions). I would make sure that this is a protected site or application as while it is not against the Apple Terms and Conditions, it can be depending on how you use the technology. However, with the above options, using Custom Apps in the long run will be the best option for your organization in my opinion as your company will not be able to leverage the latest security entitlements from Apple by using Enterprise signed applications. Hopefully this helps and happy coding!
Feb ’22
Reply to "Failed to create provisioning profile." in Xcode 13.0
Hey @iTie, Thanks for posting! What I would suggest is turning off "Automatically Manage Signing" in Xcode and then manually selecting the profile after downloading it to you local machine and then double clicking it to open it and install it (CMD + O will also do the trick). You are most likely running into issues since the profile that you are showing in the portal was created by Xcode (XC in the front of the name), but if you have manually modified it Xcode sometimes runs into problems. Once you have done this you should be able to switch back to Automatically Manage Signing and have Xcode take ownership of the profile again. At least this works for me. Hopefully this helps!
Oct ’21
Reply to How do you renew distribution certificates and create a cert request
Hey @machine-agency, Thanks for posting this on the forums! At a super high level, this is nothing urgent to worry about and you have plenty of time! The only thing that will "stop working" on the 27th is being able to generate a production IPA file for uploading to the App Store. No other work should be impacted. Below are a few guides that might be helpful for creating a CSR file (first two are CSR file only, the later two are the full certificate process). This will look like any other file on your computer. I have three recommendations when creating CSR files for use. Only have one per Apple Developer Account that you are working with. This helps me personally reduce confusion as I work across multiple accounts. I do not specify the Key Size when working with Apple services as Apple sets the Distribution Certificate Key Size or APNS Key Size when creating these certificates. Apple changes your Distribution Certificate anyways when you upload to the App Store. In the "Common Name" field I would suggest putting your Team Name. The reason I do this is so that I know which account a certificate belongs to when looking at the certificate that you generate with the CSR after it has been created. You can find your Team Name here: https://developer.apple.com/account/#!/membership/. https://www.ssl.com/how-to/csr-generation-in-macos-keychain-access/ https://www.namecheap.com/support/knowledgebase/article.aspx/10207/14/generating-a-csr-on-mac-os-using-keychain/ https://support.staffbase.com/hc/en-us/articles/115003458931-Creating-the-iOS-Distribution-Certificate https://sarunw.com/posts/how-to-share-ios-distribution-certificate/ Hopefully this helps!
Oct ’21
Reply to Questions regarding an Apple API
Hey @meghna_810, Thanks for posting this question! This is a great one as the iOS ecosystem becomes more complex. I will share what I know, but hopefully others have more information as well! So in general, you will want to compare the SupportedDevices list of the two OS releases. At a high level, the 14.8 release applies to 71 hardware models where the 15.0.2 release applies to 79 hardware models (makes sense as newer hardware has been released that never had iOS 14 installed). Historically, this gap would exist with major OS releases to indicate hardware no longer supported for major releases as I image you know. Additionally, now that we have iOS update delays for managed devices, those also need to be accounted for when doing security updates. As an example, an MDM device has the option to now delay a major OS updates, but they can still install security updates without accepting the major OS update. Apple will continue to make security updates to legacy OS versions until they are formally no longer supported and eventually you will see those fall off. Some information about each OS release can be learned based off of the order in which they are released and also the hardware it is being made available to. The best place to find information on this is Apple Security Page and sign up for the security notifications. The release notes are not always up to date but the security updates will always be up to date from my experience. https://developer.apple.com/documentation/ios-ipados-release-notes https://lists.apple.com/mailman/listinfo/security-announce/ More information on the certificates that Apple manages and has in use can be found at the below URL. https://www.apple.com/certificateauthority/ There are also typically announcements when developer related certificates are changed such as the Apple Push Notification Service certificates. Hopefully this helps!
Oct ’21
Reply to Replacing the Side-Load
Hey @Swift Beginner, Thanks for posting on the Apple Developer Forums! I don't have much information to go off of from your description, but I will do my best to help! The first thing you will want / need to do is register for an Apple Developer Account. https://developer.apple.com/programs/enroll/ This will be needed for installing your own application onto physical hardware. You can build to the simulator without this, but you will need a Apple Developer Account to build to physical hardware. The next thing you will need to do is register your device with your Apple Developer Account. Thankfully Apple has made this easy for us developers. You can sign into your Apple Developer account under Xcode --> Preferences --> Accounts and this will make all of your developer account resources available within Xcode. https://developer.apple.com/documentation/xcode/distributing-your-app-to-registered-devices From the device drop down, you will then be able to select your device after logging into your Apple Developer Account inside of Xcode and go to the "Signing" section for the target (Select your Project on the left side of Xcode and then the target under the "Targets" section). Once you do this Xcode should help you and prompt you to "Register this device" with your Apple Developer Account. Once you have completed these steps you will be able to build onto a physical device. You will need to repeat these steps for each device that you would like to build on. The second link that I shared has some good information on the different possibilities so I would recommend reading the entire guide even though not all of it will apply (right now) but will pay off in the long run to understand how distribution works. Hopefully this helps and post back with any additional questions that you may have!
Oct ’21
Reply to Ad hoc App Distribution no Wifi connection?
Hey @Relbot, Thanks for posting this on the forums! I am not a code expert, but we will need a code sample to help find out why your application is failing to determine if it has an active network connection. I can tell you that regardless of how your application is signed (Development or AdHoc) that it does have access to the network by default to make calls outside of its container. Hopefully this helps!
Oct ’21
Reply to App rejection due to login failure
Hey @ktanya1901, Thanks for posting on the forum! Is the App Review team able to provide you with any logs from the device in which you are testing on? If there was a network issue it would be fairly easy to find if they are able to provide you with logs even if the device they are using is not crashing. When you say HTTP, are you really leveraging HTTP or did you mean HTTPS? If you are using HTTP, do you have the exception for insecure web traffic in your Info.plist? https://developer.apple.com/documentation/bundleresources/information_property_list/nsapptransportsecurity Hopefully this helps!
Oct ’21
Reply to iPhone only app
Hey @bhavesh_jain, @Claude31 has the right answer. Depending on why you are asking the question and how complicated your application is, there might be other ways to accomplish what you are looking to achieve. As an example, if you are building an application with HealthKit, HealthKit does not exist on iPad so it will only show up in the App Store for iPhone. Say that there is a device hardware feature that your application requires but is not supported on iPad, the application would not show up on the App Store for iPad. https://developer.apple.com/support/required-device-capabilities/ Apple does a spectacular job at trying to make as many of their devices support as many applications as possible though so it may be hard to accomplish this if you are not building an extremely complex application. Additionally, don't forget about your application running on Mac hardware! It is not a requirement yet... but I imagine that isn't more than a few years down the pipeline. Hopefully this helps!
Oct ’21