I also have this problem.
It seems to me that the key is to make sure that the “product” you are dealing with was associated with the DISTRIBUTION provisioning profile, which was signed with a code signing identifier that has the right to upload items to the application (usually a company or a separate developer).
However, the problem that I usually encounter is that * .app "product" at the bottom of the project navigator list (in the "products" group) is NOT the result of the archive. I can say it from a timestamp. I do not know where the archive operation places its product. (Maybe someone here can explain how this works).
As a result, I install ALL training profiles in the "Code Signing" section of the "Build Settings" section in the preparation profile for distribution. Then I am "BUILD for RUN". This leads to the * .app file in the Products section of the Project Navigator panel, which, while it is the result of the Run Run operation, is correctly signed for distribution. I can say that the * .app product is “fresh” by timestamp.
It is this * .app product that I compress and deploy using Application Loader.
It seemed to work today.
(I admit that I am an amateur, and I believe that the preparation process is somewhat similar to the load, and what I write above may be a kind of infantile superstition about what works.)
source share