Copy link to clipboard
Copied
Our mobile game uses FLash, and AIR 29 to make it work on IOS devices,
However, we can't upgrade our game since half year ago, and Apple review team finally told us the reason:
REJECTED:
Your app uses or references the following non-public APIs:
_IOPSCopyPowerSourcesInfo, _IOPSCopyPowerSourcesList, _IOPSGetPowerSourceDescription
The use of non-public APIs is not permitted on the App Store because it can lead to a poor user experience should these APIs change.
Continuing to use or conceal non-public APIs in future submissions of this app may result in the termination of your Apple Developer account, as well as removal of all associated apps from the App Store.
Next Steps
If you are using third-party libraries, please update to the most recent version of those libraries. If you do not have access to the libraries' source, you may be able to search the compiled binary using the "strings" or "otool" command line tools. The "strings" tool can output a list of the methods that the library calls and "otool -ov" will output the Objective-C class structures and their defined methods. These tools can help you narrow down where the problematic code resides. You could also use the "nm" tool to verify if any third-party libraries are calling these APIs.
Resources
For information on the "nm" tool, please review the "nm tool" Xcode manual page.
If there are no alternatives for providing the functionality your app requires, you can file an enhancement request.
Then we found it's in AIR sdk, even 29.
Then we replied:
The earlier letter said our app has the following non-public APIs:
"_IOPSCopyPowerSourcesInfo", "_IOPSCopyPowerSourcesList" and "_IOPSGetPowerSourceDescription".
We checked the ipa file with the tools you suggested.
"nm" and "oTool" found none.
The tool "strings" only found "IOPSCopyPowerSourcesInfo", "IOPSCopyPowerSourcesList" and "IOPSGetPowerSourceDescription" (non-underlined) referenced.
After searched the non-underlined version from the apple develop center, we thought they are public APIs.
However, we never called them.
These were found in the popular SDK Adobe AIR, and were alone there for years.
We haven't got any alternatives beyond Adobe AIR.
Copy link to clipboard
Copied
As far as I my submissions attempts and rejections goes the issue has been present for me from AIR 26 to AIR 29
Copy link to clipboard
Copied
这个问题只有等aodbe解决了吗?
Copy link to clipboard
Copied
Air SDK 22, same problem.
Copy link to clipboard
Copied
想了一下,也许和下面这两段代码有关:
NativeApplication.nativeApplication.systemIdleMode = SystemIdleMode.KEEP_AWAKE;
NativeApplication.nativeApplication.executeInBackground = true;
Copy link to clipboard
Copied
Looks like possible to fix this (calling mac osx methods on ios) in binary. We will test this soon (file libRuntimeHMAOT.arm-air.a). Looking forward hearing from adobe
Copy link to clipboard
Copied
Guys, you should check this link better (IOS is blocking AIR, rejected for months,due to AIR has API using IOPSCopyPowerSourcesInfo ), Chris Campbell replied there already.
Copy link to clipboard
Copied
We're in the same situation.
Waiting for updates
Copy link to clipboard
Copied
Hi, just a quick info: Our update for iOS just passed review in iTunes. We are also using Adobe Air 29.0.0.112, a couple of ANEs from Milkman, Distriqt and others. I don't know if it is related to usage of APIs though or if we were just lucky:
Copy link to clipboard
Copied
Hey, did you do a hex analysis of your application? Is your application using any of restricted APIs?
Copy link to clipboard
Copied
use WinHex check the .ipa file unzip is OK.
IOPSGetPowerSourceDescription, IOPSCopyPowerSourcesList, IOPSCopyPowerSourcesInfo
these API is here:
https://developer.apple.com/documentation/iokit/1523839-iopscopypowersourcesinfo?language=occ
it is Mac OS only.
I found them at AIR19 AIR24 AIR29.
when you creat a empty AS AIR for IOS project.they are here.
so. AIR still can accept by ios.
Copy link to clipboard
Copied
use this step:
Copy link to clipboard
Copied
Hi all,
Here are the updated versions of the AIR SDK that we believe fix the issue reported in this thread. We're still in the process of testing and would appreciate feedback from the community. If everything looks good, we hope to update the official download page with this build within the next few days.
Thanks,
Chris
Copy link to clipboard
Copied
Good news! I just published a new IPA with the updated SDK and did the Strings test and nothing is showing up for the following any further:
IOKit, IOPSGetPowerSourceDescription, IOPSCopyPowerSourcesList, IOPSCopyPowerSourcesInfo
We are going to re-submit to apple tomorrow and will let you know how it goes.
Thanks Chris!
Copy link to clipboard
Copied
thanks team.
Copy link to clipboard
Copied
Chris,
With AIR 29.0.0.122 for Windows I can not export normal release build for iOS in ad hoc mode. Flash Builder does export it but when I try to install it on iPhone it says that build is invalid. Is that normal?
Copy link to clipboard
Copied
We're investigating the ad hoc mode issue and will get back ASAP.
I wanted to also include the SDK without the compiler (for those that would like this version)
Mac - https://files.acrobat.com/a/preview/679585ca-74fc-490f-903d-98725ecda477
Win - https://files.acrobat.com/a/preview/3d670df4-3ba0-4a57-a8ed-4926cd8442a3
Chris
Copy link to clipboard
Copied
Chris,
Thanks for looking into it. Also is there any chance of fixing this bug any time soon:
No one seems to take it seriously. It really affects performance on iOS and Starling users alot.
Thanks again.
Copy link to clipboard
Copied
Today Apple successfully published our app with new air
Copy link to clipboard
Copied
Hi,
Thanks for reporting!
What type of provisioning profile are you using to package the application, the development one or the ad-hoc?
Copy link to clipboard
Copied
Copy link to clipboard
Copied
I have same problem, the ad-hoc ipa can't install to device...
Copy link to clipboard
Copied
Hi,
AIR ADK version 29.0.0.122 has been released. The Apple store app rejection issue, Tracker is addressed with this build. You may download the build from Download Adobe AIR SDK
Thanks!
Copy link to clipboard
Copied
Thanks I have just download it. But there are no release notes for it. When we can expect to see release notes?
Is the only change in the AIR 29.0.0.122 the Apple store app rejection issue?
Thanks
Copy link to clipboard
Copied
Hi,
We are working on that, release notes will be available soon.
Thanks.
Copy link to clipboard
Copied
I am using Flash Builder 4.7.
Today, I downloaded AIR SDK 29.0.0.122 from the offical page - https://www.adobe.com/devnet/air/air-sdk-download.html.
I applied air sdk 29 as normal and built the binary (.ipa) using air 29.0.0.122.
Sure, I used the distribution certificate .p12 and adhoc provisioning file.
I built ipa as adhoc but can not installed on the device.
When ipa was built as adhoc with air 27 or 28, it was successfully installed on the device.
What's wrong?
Please let me know how to solve it.