Guideline 2.1 - Information Needed


We have started the review of your app, but we are not able to continue because we need additional information about how your app uses face data.

Next Steps

To help us proceed with the review of your app, please provide complete and detailed responses to the following questions.

- What face data is your app collecting?
- For what purposes are you collecting this information? Please provide a complete and clear explanation of all planned uses of this data.
- Will the data be shared with any third parties? Where will this information be stored?
- Which are the relevant sections of your privacy policy that explain collection, use, disclosure, sharing, and retention of face data?
- Please quote the specific text from your privacy policy concerning face data.

Once you reply to this message in App Store Connect with the requested information, we can proceed with your app's review.
 

Guideline 2.1 - Information Needed


We're looking forward to completing our review of your app. Before we can continue, we need a video that demonstrates the current version, 1.0.2, in use on a physical iOS device.

Specifically, we need a demo video that shows how your app implement background location. Also, please ensure video displays all functionalities, including purpose strings or authorizations the app may requests.

Addtionally, we need a demo video that shows how your app’s 人脸识别 feature works. Also, please ensure video displays all functionalities, including purpose strings or authorizations the app may requests.

Keep these requirements in mind as you make your demo video:

- Only use footage of your app running on a physical iOS device, not on a simulator.
- Make sure the video clearly documents all relevant app features, services, and user permission requests.
- You can use a screen recorder to capture footage of your app in use.

Next Steps

Create the demo video, add a link to the video in the App Review Information section of your app’s page in App Store Connect, and reply to this message in App Store Connect.

To add the video link:

- Sign in to App Store Connect.
- Click on My Apps.
- Select your app.
- Click on the app version on the left side of the screen.
- Scroll down to App Review Information.
- Provide the demo video link and any necessary access details in the Notes section.
- Click the Save button at the top of the Version Information page.

Please note that if your app can only be reviewed with a demo video, you’ll need to provide an updated demo video for every app submission.

解决方案:要用真机录视频,1,录制手机端App人脸识别的操作流程,2,录制后台PC端管理系统里面人脸识别相关的数据页面,3,录制手机端App后台持续定位的操作流程,4,录制后台PC端管理系统中App持续定位上传的轨迹点部份

我是这样写的:

Dear Apple team, Thank you for your review of the application. Our reply to your question is as follows:

1,My app collects these facial data: 1. Face detection, facial key point detection, facial expressions, age and gender, facial posture, and facial recognition.

2,The purpose of collecting this information is to verify the driver's identity through facial recognition, ensuring that the driver is operating this information himself.

3,No, the data will not be shared with third parties, and this information will be stored in the cloud based facial database.

4,The contact information in the "Data Associated with You" section of the privacy policy explains the collection, use, disclosure, sharing, and retention of facial data, which is used for app functions and associated with user identity.

5,The specific text regarding facial data in the privacy policy is the name in the contact information.

Let me explain about the four video files in the attachment: 1,IMG_ The 1096. MOV video records that the app has always enabled the positioning function. After creating a freight order in the background, the driver can use the app to grab the order and upload the document. After clicking to confirm loading, the app will continue to locate the driver and the truck's running trajectory, and after clicking to confirm unloading, the app will stop the positioning function 2,IMG_ In the 1093. MOV video, it is recorded that clicking on "Driver Track" on the backend management system can play the driver's track and compare it with the planned track of the order. If the driver has yaw during the entire cargo transportation process, this track can be viewed. 3,RPReplay_ Fianl168128925.MP4 video records the driver's identity verification through uploading ID card and driver facial recognition data on the app, in order to confirm that it is the driver himself who is operating. 4,IMG_ 0265. The MOV video records the specific data of identity verification and facial verification that can be viewed on the backend management system.

Best regards,

消息附件:

RPReplay_Final1681289251.MP4预览下载

IMG_1096.MOV预览下载

IMG_1093.MOV预览下载

IMG_0265.MOV预览下载

​​​​​​​

Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage

 


We noticed your app collects and uses face data but the provided privacy policy you provided in metadata http://www.hand-hitech.com does not include the following required information:

- Your reasons for storing face data.
- The length of time face data is stored and why you store it this specific length of time. Note that it is not appropriate to store face data indefinitely.
- Which third parties you share face data with.

To protect the user's security and privacy, developers must provide privacy policies that thoroughly explain their app's data collection and storage practices.

Next Steps

To resolve this issue, update your privacy policy to include all the required information and then provide a link to your updated privacy policy in the App Privacy section for this app in App Store Connect. If your privacy policy already includes this information, respond to this message with the relevant sections quoted in your reply.

Resources

- Learn how to update your privacy policy in App Store Connect.
- Learn more about our requirements for privacy policies in App Store Review Guideline 5.1.1(i).
- For your convenience, we’ve included Section 3.3.10 of the Apple Developer Program License Agreement below:

3.3.10 You must provide clear and complete information to users regarding Your collection, use and disclosure of user or device data, e.g., a description of Your use of user and device data in the App Description on the App Store. Furthermore, You must take appropriate steps to protect such data from unauthorized use, disclosure or access by third parties. If a user ceases to consent or affirmatively revokes consent for Your collection, use or disclosure of such user's device or user data, You (and any third party with whom You have contracted to serve advertising) must promptly cease all such use. You must provide a privacy policy in Your Application, on the App Store, and/or on Your website explaining Your collection, use, disclosure, sharing, retention, and deletion of user or device data.

原因:人脸识别属于隐私政策范畴的数据,隐私政策URL里面没有相关的隐私说明

解决方案:在隐私政策URL那里填上一个URL链接,链接里面要用方字描述清楚隐私数据的收集、存储、分享,可参考微信的隐私政策URL:(https://weixin.qq.com/cgi-bin/readtemplate?lang=zh_CN&t=weixin_agreement&s=privacy)

Guideline 2.1 - Performance - App Completeness​​​​​​​

We discovered one or more bugs in your app. Specifically, a white screen was displayed when we launched the app.

Review device details:

- Device type: iPhone

- OS version: iOS 16.3

Next Steps

Please run your app on a device to reproduce the issues, then revise and submit your app for review. If at first you're unable to reproduce the issue, try the following:

- For new apps, uninstall all previous versions of your app from a device, then install and follow the steps to reproduce.

- For app updates, install the new version as an update to the previous version, then follow the steps to reproduce.

If we misunderstood the intended behavior of your app, please reply to this message in App Store Connect to provide information on how these features were intended to work.

Resources

- For information about testing apps and preparing them for review, see Testing a Release Build- To learn about troubleshooting networking issues, see About Networking.

- Watch a video from App Store Review with tips for preventing common rejections.

Please see attached screenshots for details.

原因:一启动App就显示白屏,是因为一启动时调用了网络接口,但是国外测试时这个网络接口无法访问,导致白屏,回复说是iOS16.3测试的,我并没有相应的系统版本,但是接口获取不到数据,跟系统版本关系不是很大。

  • 有网友说,有可能是审核在国外获取不到,改一下销售范围,然后改成中国大陆,结果还是同样理由被拒,截图就是获取不到。
  • 继续回复,说是我们的服务器在中国,我们的销售范围也是中国大陆,(此时的回复我仅使用中文进行了回复,没有翻译成英文,审核人员是不是没看懂啊)仍然同样理由被拒了。
  • 也有参照网友说是国外访问是IPV6,而国内是IPV4的问题,申请服务器开通IPV6,后来说是开通这个还要各种申请,有点麻烦。

后来看到一个帖子提供了一个网站,是测试url能不能在其他国家访问的网站,对我帮助很大,谢谢那些踩坑的前辈们。
就是这个测试网站
经过测试之后发现仅有两个访问成功,其他超时,此时压力来到了运维这边,经过他和服务器那边的人沟通,说是加了云安全只开通了中国访问,当场就申请开通了国外访问,经过审批开通之后,全部访问都变成了让人心安的绿色200ok。

再次提审,成功过审

或者还有一种办法,App启动时先显示原生页面,网络请求不能影响原生页面的显示,然后等App上架后再改成H5,或者再打开请求接口的开关

​​​iOS开启后台定位审核被拒
解决方案:

第一次运行项目的时候的弹框要说明你定位的目的是什么?(也就是告诉用户你干嘛要定位)

就是你在PLIST里加了后台定位,添加描述文件,描述使用定位是干嘛的,明确功能作用。
普通的定位不需要加后台运行,你如果只需要APP运行时定位,就不需要开后台定位。
如果你的APP中真的有后台定位的功能,比如物流类APP,需要实时定位记录轨迹等,你就在APP的描述中说清楚,同时,免责声明不是在plist里写,是在itunes中写APP介绍的时候加上的。也就是用户在app store搜索你的APP的时候,看到APP介绍时候应该有那么一句,反正就是:长时间定位有可能损耗电池balabala的。你翻出那一句,粘贴到app描述中就行了。 

或者参考链接1:https://www.jianshu.com/p/e71c7fb61ba0​​​​​​​

参考链接2: ​​​​​https://www.jianshu.com/p/265aeede8cf2

在项目中使用到第三方的百度导航-后台定位功能,发布上线审核被拒
被拒邮件内容提示:

2. 1 Performance: App Completeness

Guideline 2.1 - Information Needed
We have started the review of your app, but we are not able to continue because we need access to a video that demonstrates your app:
in use on a physical iOS device, which demonstrates your app’s background audio and location features. 
Please ensure the video you provide shows a physical iOS device (not a simulator).

解决方案:给苹果方回复为什么使用后台定位功能,使用定位做什么用的,并提供一个演示视屏。因为苹果审核人员是看到有后台定位的需求却没有在应用中看到有相应的定位轨迹体现,才拒绝应用并发邮件说需要一个演示视频,特别提出要有后台定位功能的片段。

如项目 3.7版本审核被拒我的解决方案就是给苹果审核方回复:在某界面中新增地图导航按钮,该功能主要是为客户提供导航路线功能,所以在使用期间需要实时定位;在用户使用导航时,若用户手机已经安装百度地图,则会优先选用百度地图第三方来进行导航;若用户没有安装百度地图则直接在本项目中新建一个导航界面进行导航;下面为您提供一个没有使用第三方百度地图进行导航功能演示视频:http://v.youku.com/v_show/id_XMzE5MjI3NDk0OA==.html

Guideline 2.1 - Information Needed

We have started our review, but we need additional information to continue. Specifically, it appears your app may access or include paid digital content or services, and we want to understand your business model before completing our review. 

Next Steps

Please review the following questions and provide as much detailed information about your business model as you can.

1. Who are the users that will use the paid subscriptions in the app?
2. Where can users purchase the subscriptions that can be accessed in the app?
3. What specific types of previously purchased subscriptions can a user access in the app?
4. What paid content, subscriptions, or features are unlocked within your app that do not use in-app purchase?
5. Are the enterprise services in your app sold to single users, consumers, or for family use?

中文翻译如下:

我们已经开始了我们的审查,但是我们需要更多的信息来继续。具体来说,它显示您的应用程序可能访问或包含付费数字内容或服务,我们希望在完成我们的审查之前了解您的商业模式。

下一个步骤

请检查以下问题,并尽可能详细地说明您的业务模式。

1. 哪些用户会使用应用程序中的付费订阅?
2. 用户可以在哪里购买可在应用程序中访问的订阅?
3.用户可以在应用程序中访问哪些特定类型的以前购买的订阅?
4. 哪些付费内容、订阅或功能在您的应用程序中被解锁但这些内容、订阅或功能不使用应用内购买?
5. 你的应用中的企业服务是卖给单个用户、消费者还是供家庭使用?

解决方案:

Dear Apple team,

Thank you for your review of the application. Our reply to your question is as follows:

1. There is no need to pay subscription in the app.

2. Users can purchase our on-board intelligent weighing equipment. Our background management system assigns an account to users, and then users use this account to log in to the app to view the GPS, weight, speed and other data of the equipment

3. There is no need to pay for subscription in the app. As long as the user has purchased our on-board intelligent weighing equipment, he can use all the features in the app

4. There is no content that needs to be paid to unlock, so we don't need Apple's in app purchase service.

5. The enterprise service in the app is for users who buy our weighing equipment. We are an Internet company, which mainly produces on-board intelligent weighing equipment. Any user in the cement industry can buy our on-board intelligent weighing equipment and install the equipment at the bottom of the vehicle. These users use our app to view the GPS, weight, speed and other data of the equipment

Best regards

中文翻译

亲爱的苹果的团队,

谢谢你对应用程序的审核。关于您的问题,我们的答复如下:

1.没有需要在app内进行付费订阅。

2.用户可以购买我们的车载智能称重设备,我们后台管理系统分配一个账号给用户,然后用户使用这个账号登录app查看设备的GPS、重量、速度等数据.

3.没有需要在app内进行付费订阅,只要是购买了我们的车载智能称重设备的用户,app里面的所有特性他都可以使用.

4.没有需要付费才能解锁的内容,所以我们不需要苹果的应用内购买服务。

5.app中的企业服务是给那些购买我们称重设备的用户使用,我们是一个互联网公司,主要生产车载智能称重设备,任何水泥行业用户可以购买我们的车载智能称重设备,并将设备安装在车辆底部,这些用户使用我们这个app来查看设备的GPS、重量、速度等数据.

致以最亲切的问候

Guideline 2.1 - Information Needed


We’re looking forward to completing the review of your app, but we need more information to continue.

Next Steps

Please provide detailed answers to the following questions in your reply to this message in App Store Connect:

- Please clarify why this app uses background location.
- Please clarify where we can locate the background location feature in your app.

Please provide a demo video clearly showing the persistent background location usage if we are not able to locate it in the app. Please make sure to press the Home Button to show the background mode in use.

解决方案:

Dear Apple team,

Thank you for reviewing the application. With regard to your question, our reply is as follows:

1. The background location of this APP is used to allow users to keep clock-in when they are in other places, and our vehicle intelligent weighing management platform will count the arrival time, departure time and on-duty duration of users. Because our users' posts in other places have fixed working areas, if only one positioning is allowed, the user's position cannot be located after leaving the working area, and it is impossible to judge whether the user is still in the working area, and then the working hours of the user cannot be counted.

2. After the user logs in to the APP and clicks "Always allow position", this APP will continue to obtain the user's position, and then upload the longitude and latitude to our vehicle intelligent weighing management platform through the network. The platform keeps track of how long users are on duty based on their reported location.

3. Attached is a video recording from user login to location authorization, and then press the home button to back the APP to the background. Finally, the location information and on-duty duration information reported by users are checked on our vehicle intelligent weighing management platform. Please refer to.

Best regards

中文:

亲爱的苹果的团队,

感谢您审核申请。就你的问题,我们的答复如下:

1. 该APP的后台位置用于用户在外打卡,我们的车辆智能称重管理平台会统计用户的到站时间、出发时间和执勤时间。因为我们的用户在其他地方有固定工作区域,如果只能填报一个定位,用户的位置不能离开工作区域后,它无法判断用户是否仍在工作区域,然后用户的工作时间不能统计。

2. 用户登录APP,点击“始终允许位置”后,APP会继续获取用户的位置,然后通过网络将经纬度上传到我们的车辆智能称重管理平台。该平台根据用户报告的位置跟踪用户值勤时间。

3.附件是用户登录到位置授权的视频,然后按home键将APP返回到后台。最后,在我们的车辆智能称重管理平台上查看用户上报的位置信息和值班时长信息。请参考。

致以最亲切的问候

后台定位演示视频:像我的APP是没有后台持续定位的页面的,就要录一个视频,包括APP的操作和后台的页面操作配合视频,在APP登录之后会弹一个定位权限授权的弹窗,用户点“始终允许”之后,APP一直在后台采点,然后同时在我们管理平台上也不断刷新页面,可以看到APP上传的经纬度,管理平台上还有一个页面是统计员工在岗时间的,这个就是为什么要持续定位的主要原因,苹果也说了你要么给他提供一个具体的定位操作功能页面,要么你要说明清楚为什么要后台持续定位,如果单次定位就能实现你的功能,就没必要持续定位了,如果你文字写的不清楚,很可能审核不给过。

Guideline 2.1 - Information Needed



We have started the review of your app, but we are not able to continue because we need additional information about your app.

Next Steps

To help us proceed with the review of your app, please review the following questions and provide as much detailed information as you can.

- Who is the target audience?
- How do users obtain an account?
- Is this app meant for internal distribution in your own company, in the company of one target client, or in multiple target clients’ companies?
- In which countries will this app primarily be distributed?
- If this app is meant for internal distribution, will the app be accessible by both internal and external partners? Or will it be exclusive to in-house employees?

Once you reply to this message in Resolution Center with the requested information, we can proceed with your review.



Since your App Store Connect status is Metadata Rejected, we do NOT require a new binary. To revise the metadata, visit App Store Connect to select your app and revise the desired metadata values. Once you’ve completed all changes, reply to this message in Resolution Center and we will continue the review.

  1.目标受众是xxx

2.如何如何xxx建立App账户(一定要解释清楚)

3.此应用不是在我们公司内部使用, 是仅用于一个目标客户的公司下属使用.

4.应用将主要在中国地区发布使用

5.应用上线后我公司后台管理员和目标客户公司的下属可使用.  

具体可以,比如我是这样写的:

尊敬的苹果团队,您好,
感谢您的耐心审核,针对您提到的5个信息问题,我们现在对此回复如下:
1.目标受众是水泥厂家、经销商和水泥运输车队
2.账户的建立是如果厂家打算使用我们的产品,会和我们进行合作,我们后台会根据他们提供的手机号创建空间,厂家可以在自己空间下开通经销商账号
3.此应用不是在我们公司内部使用, 是仅用于一个水泥行业客户的公司下属使用.
4.应用将主要在中国地区发布使用
5.应用上线后我公司后台管理员和目标客户公司的下属可使用.

结果苹果又再次拒绝了,苹果是这样回复的:

Hello,

Thank you for your response. 

Regarding the 2.1 issue, it would be appropriate to review the following questions and provide as much detailed information as you can.

- Is this app meant for distribution in any target clients’ companies?

We look forward to reviewing your resubmitted app.

Best regards,

App Store Review
 

意思是问我们的APP是否是应用于某一个目标客户公司还是说应用于所有目标客户公司,我的回复是这样的:

Dear apple team,

Thank you for your patient examination. With regard to your question, our reply is as follows:

Yes, this APP is applicable to any cement production and transportation industry clients, we are a Internet company, the main production car intelligent weighing equipment, any cement manufacturers can purchase our weighing equipment and installed in the bottom of the vehicle, our weighing equipment will vehicle load data and real-time GPS data via wireless network to send to our server, and then our server admin staff will create and assign a password through the background to the cement manufacturers use, cement manufacturers according to the assigned account login and password APP, after the success of the login from our server to get the data of weighing equipment, The data mainly includes the vehicle on which the weighing device is installed, the GPS position of the vehicle, and the load curve of the vehicle. Meanwhile, customers in the cement industry can create cement transportation orders through this APP and check the details of the orders. Attached is the page of our background account creation and distribution.

Best regards

本以为又要被拒了,结果过了四五天突然成功上架了,感谢🙏,也就是说要把你公司的产品,所属行业,客户群体以及APP使用之间的关系写的清楚些就没问题了。

关于2.1,也有下面这样的问题描述

Guideline 2.1 - Information Needed


We’re looking forward to continuing our review, but we need a bit more information about your business model and your users to help find the best distribution option for your app. Our preliminary review of your app suggests that your app may be a good fit for our Apple Business Manager program, which is designed specifically for business apps. 

Next Steps

Please review the following questions and provide as much detailed information as you can for each question. 

1. Please describe which kinds of users you expect will use your app. Some common kinds of users are:

- Users who are part of a single company (including its partners, employees and contractors)
- A limited number of companies which are clients of the developer
- The general public

2. Identify the countries or regions where you plan to distribute your app.
3. What features in the app are intended for use by general App Store users?
4. How do users obtain an account?
5. If there are any paid aspects of the app, such as for opening an account or using certain features in the app, please explain how users access the paid content.
6. Who pays for the paid content?

Since your App Store Connect status is Metadata Rejected, we do NOT require a new binary. To revise the metadata, visit App Store Connect to select your app and revise the desired metadata values. Once you’ve completed all changes, reply to this message in Resolution Center and we will continue the review.

Guideline 4.1 - Design - Copycats


Your app or its metadata appears to contain potentially misleading content. Specifically, your app includes content that resembles 万年青 without the necessary authorization.

Next Steps

Please demonstrate your relationship with any third-party brand owners represented in your app.

我的回复是这样的:

中文:

亲爱的苹果的团队,

谢谢你对应用程序的审核。关于您的问题,我们的答复如下:

1.这个app适用于任何水泥的生产、销售、运输行业的用户,我们是一个互联网公司,主要生产车载智能称重设备,任何水泥行业用户可以购买我们的车载智能称重设备,并将设备安装在车辆底部,这些用户使用我们这个app来查看设备的GPS、重量、速度等数据.

2.这个app目前主要分发在中国.

3.只要是购买了我们的车载智能称重设备的用户,app里面的所有特性他都可以使用.

4.账号是这样获取的,用户一旦购买了我们的车载智能称重设备,我们的服务器管理人员将创建并分配一个账号和密码给用户使用,用户根据已分配的帐号和密码在app上登录,登录成功后,从服务器获称重设备上传的数据,这些数据主要包括安装的GPS、重量、速度曲线。同时,水泥行业的用户可以通过这个app创建水泥运输订单,查看订单详情。附件是我们后台账号创建和分发的页面。

5.这个app不包含任何付费方面.

6.这个app不包含任何付费方面,所以不存在买单的问题.账号是由我们的后台管理人员免费创建并分配的,登录成功之后就可以查看车辆相关的数据.

关于指南4.1,我想说的是万年青只是app所对应的后台管理系统的名称而已,可以看我发的附件.

致以最亲切的问候

英文:

Dear Apple team,

Thank you for reviewing the application. With regard to your question, our reply is as follows:

1. This app is applicable to any cement production, sale, transport industry users, we are an Internet company, the main production car intelligent weighing equipment, any cement industry users can buy our vehicle intelligent weighing equipment, and installation of equipment in the bottom of the vehicle, the users to use this app to view the GPS equipment, weight, speed and other data.

2. This app is mainly distributed in China at present.

3. As long as the user has purchased our vehicle-mounted intelligent weighing device, he can use all the features in the app.

4. Account is obtained that the user once bought our car intelligent weighing equipment, our server admin staff will create and assign an account and use the password to the user, the user according to the assigned account and password login in the app, after the success of the login, in weighing equipment to upload data from the server, the data mainly includes the installation of GPS, weight, speed curve. Meanwhile, users in the cement industry can create cement shipping orders through the app and view the order details. Attached is the page of our background account creation and distribution.

5. This app does not include any payment aspect.

6. This app does not include any payment aspect, so there is no payment problem. The account is created and assigned by our background manager for free. After successful login, you can view the data related to the vehicle.

About guide 4.1, What I want to say is that Evergreening is just the name of the background management system corresponding to the APP. You can see the attachment I sent.

Best regards

结果还是被拒,苹果的回复如下:

Hello,

Thank you for providing this information.

Upon further review, we found that your app does not comply with the following guidelines:
 

Guideline 3.2 - Business

Users come to the App Store expecting to find apps they can pick up and use, so we check every app to see if it is meant for a wide audience. For apps designed to be used by a specific business, we work with developers to choose the right distribution option for their app. 

We found in our review that your app is designed to be used by a specific organization or business, including its partners or employees. Custom app distribution through Apple Business Manager is the best way to make these kinds of business apps available to your target audience. 

By distributing custom apps through Apple Business Manager, you will be able to: 
- Distribute apps to personal and company-owned devices.
- Enjoy an App Review process designed with business needs in mind, in locations where custom app distribution is available.
- Keep using Apple Developer Program tools like App Store Connect for app management and TestFlight for beta testing.

Next Steps

Follow these steps to distribute your business app using custom app distribution and Apple Business Manager: 

1. Have the business or organization your app is designed for enroll in Apple Business Manager.
2. If you haven't already, sign the Paid Applications agreement in App Store Connect
3. Change your Pricing and Availability setting in App Store Connect to make your app available to specific businesses or organizations
4. Resubmit your app for review. Once the app has been published, businesses and organizations will be able to find your app on Apple Business Manager.

Resources 

- Watch a WWDC overview of custom app distribution with Apple Business Manager.
- Learn how to use Apple Business Manager.
- See the availability of Apple business programs in your region.

Best regards,

App Store Review

中文翻译:

你好,

谢谢你提供这些信息。

经过进一步审查,我们发现您的应用程序不符合以下指导原则:


准则3.2 -业务

用户来到应用商店希望找到他们可以挑选和使用的应用程序,所以我们检查每个应用程序,看看它是否适合广大用户。对于为特定企业设计的应用程序,我们与开发人员合作,为他们的应用程序选择正确的分发方案。

我们在审查中发现,你的应用程序是为一个特定的组织或企业设计的,包括它的合作伙伴或员工。通过Apple Business Manager发布自定义应用程序是将这些类型的商业应用程序提供给你的目标用户的最好方式。

通过发布自定义应用程序通过苹果业务经理,您将能够:
-向个人和公司拥有的设备分发应用程序。
-享受一个应用程序审查过程的设计考虑到业务需求,在地方自定义应用程序分发是可用的。
-继续使用苹果开发者程序工具,如App Store Connect进行应用管理,TestFlight进行beta测试。

下一个步骤

按照以下步骤使用自定义应用程序分发和苹果业务经理分发您的业务应用程序:

1. 有企业或组织您的应用程序是专为注册在苹果业务经理。
2. 如果还没有,请在App Store Connect上签署付费应用协议。
3.改变你在App Store Connect中的定价和可用性设置,使你的应用程序对特定的企业或组织可用。
4. 重新提交你的应用程序以供审查。一旦应用程序发布,企业和组织将能够在Apple Business Manager上找到你的应用程序。

资源

-观看一个WWDC概述自定义应用程序分发与苹果业务经理。
-学习如何使用苹果业务经理。
-查看您所在地区的苹果商业程序的可用性。

最好的问候,

应用程序商店检查

很明显,苹果将此App划分为特定企业的商业应用,而非面向普通用户的,于是我只能继续跟坚持我的App是面向全用户的,而非特定企业的,回复如下:

Dear Apple team,



Maybe my description is not accurate, which leads to your misunderstanding. The user I mentioned earlier refers to all customer groups. Our app is mainly released in China. What we are facing is not only a specific enterprise, but also a single person. For example, if he owns a car, he can also buy our company's GPS equipment and install it in his car. After he purchases the GPS device, we will assign him an account number and password, and he can log in and check through this app His vehicle's GPS data and other related data, so it can be understood that the app is also for all people. The main purpose of our app is to enable all customers who purchase our GPS equipment to monitor their vehicles with our app, improve their protection of their vehicles, and facilitate the query of their own data trends. It is a tool software for users. This software is the whole System module is an indispensable link, it is very important for us! If we define our app as a specific enterprise application, first of all, other customers will not be able to download the app to view GPS data after purchasing our GPS equipment. Moreover, it is not convenient for us to iterate new versions and develop more users. After all, the app store is the only officially approved app store by apple. Maybe some functions of the app have not been improved yet. This is only version 1.0.3. With the development of the project, we should develop more customer related functions.
Then for the customer's account number and password, we will check the customer's relevant information on the platform, and then let us know the password of the customer after setting the administrator account.



Best regards

中文翻译:

亲爱的苹果团队,



可能是我的描述不准确,导致了你的误解。我前面提到的用户指的是所有的客户组。我们的app主要在中国发布。我们面对的不仅仅是一个具体的企业,也面向单个个体用户。例如,如果他有一辆车,他也可以购买我们公司的GPS设备,安装在他的车里。在他购买了GPS设备后,我们会给他分配一个账号和密码,他可以通过这个app登录并查看他的车辆的GPS数据和其他相关数据,所以可以理解这个app也是为所有人服务的。我们app的主要目的是让所有购买我们GPS设备的客户通过我们的app来监控自己的车辆,提高他们对车辆的保护,并方便查询自己的数据趋势。它是一个用户的工具软件。本软件是整个系统模块中不可缺少的一个环节,它对我们来说非常重要!如果我们将我们的app定义为一个特定的企业应用,首先,其他客户购买了我们的GPS设备后,将无法下载app来查看GPS数据。而且,对于我们来说,迭代新版本和开发更多的用户是不方便的。毕竟,应用程序商店是苹果唯一官方认可的应用程序商店。可能app的一些功能还没有改进。这只是版本1.0.3。随着项目的发展,我们应该开发更多的客户相关功能。
然后客户的帐号和密码,我们将检查平台上的客户的相关信息,然后让我们知道客户的密码设置管理员帐户。



致以最亲切的问候

然后苹果回复说在3~5个工作日内会打审核信息页面的电话来讨论App审核事项,但是等了三四天也没见苹果给我打电话,然后我就急了,直接回复说,我还没收到你的来电,请尽快拨打我的电话以便于App的审核。

结果第二天莫名其妙的就上架成功了,根本没打我电话.

Guideline 2.5.1 - Performance - Software Requirements



Your app uses the "prefs:root=" non-public URL scheme, which is a private entity. 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.

Specifically, your app uses the following non-public URL scheme:

prefs:root="的调用,这个api已经被列为私有api,请大家尽快升级。
prefs:root="的调用,这个api已经被列为私有api,请大家尽快升级

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

To resolve this issue, please revise your app to provide the associated functionality using public APIs or remove the functionality using the "prefs:root" or "App-Prefs:root" URL scheme.

If there are no alternatives for providing the functionality your app requires, you can use Feedback Assistant to submit an enhancement request.

对于以2.5.1这种问题,首先可以在Xcode工程里全局搜索“prefs:root=”,如果是代码里含有“prefs:root=”可以考虑改用最新的公开API:

NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];

if ([[UIApplication sharedApplication] canOpenURL:url]) {

       [[UIApplication sharedApplication] openURL:url];

}

其次也可以考虑第二种方式

对prefs:root = Bluetooth字段做转换,这样可以在审核时逃过代码扫描,具体方法如下:

//将字符串转换为16进制

NSData *encryptString = [[NSData alloc] initWithBytes:(unsigned char []){0x70,0x72,0x65,0x66,0x73,0x3a,0x72,0x6f,0x6f,0x74,0x3d,0x4e,0x4f,0x54,0x49,0x46,0x49,0x43,0x41,0x54,0x49,0x4f,0x4e,0x53,0x5f,0x49,0x44} length:27];

NSString *string = [[NSString alloc] initWithData:encryptString encoding:NSUTF8StringEncoding];

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:string] options:@{} completionHandler:nil];

如果“prefs:root=”搜索到的位置并不是在代码里,而是在一个文件里面的注释,可以考虑将此文件删除,或者将该注释删除,比如有一次我发现在TZImagePickerController这个第三方SDK下有个README.md文件,里面含有包含“prefs:root=”的注释说明,结果上架的时候被拒绝了,然后我将些文件删除掉,重新打包提交审核通过了。

App store 应用上传被拒 Guideline 4.3 - Design 解决方案(代码+元数据)

最近上传一个客户定制的iOS 应用到App Store的时候,又出现了Guideline 4.3 - Design被拒绝的情况,多次碰到这个情况,也是对苹果的审核机制深深的跪了,奈何胳膊拧不过大腿,还是乖乖的想办法怎么解决吧。

Guideline 4.3 - Design


This app duplicates the content and functionality of other apps submitted by you or another developer to the App Store, which is considered a form of spam.

Apps that simply duplicate content or functionality create clutter, diminish the overall experience for the end user, and reduce the ability of developers to market their apps.

The next submission of this app may require a longer review time, and this app will not be eligible for an expedited review until this issue is resolved.

Next Steps

- Review the Design section of the App Store Review Guidelines.
- Ensure your app is compliant with all sections of the App Store Review Guidelines and the Terms & Conditions of the Apple Developer Program. 
- Once your app is fully compliant, resubmit your app for review.

Submitting apps designed to mislead or harm customers or evade the review process may result in the termination of your Apple Developer Program account. Review the Terms & Conditions of the Apple Developer Program to learn more about our policies regarding termination.

If you believe your app is compliant with the App Store Review Guidelines, you may submit an appeal. Alternatively, you may provide additional details about your app by replying directly to this message.



Since your App Store Connect status is Rejected, a new binary will be required.


众所周知由于在2017年App Store算法重大调整,审核更加严格,导致之后出现大面积开发者遇到Guideline 4.3 - Design问题,这个问题在2017年年底也碰到过,不过当时换了账号重新上传就OK了,但这毕竟不是长久之计,还是得研究下怎么从代码层次避规,注意:4.3一般都是机器审核阶段才会出现的问题!

先来了解下苹果的审核机制:

1,预审核 
扫描api,及plist文件字符缺失等;此处分两步,第一步为上传时苹果Application Loador等应用对于适配icon等的检查,第二步为上传后苹果的功能性检查,例如配置了Push功能但有缺失或者未打开功能,则会邮件提示等等; 
2,机审 
此处扫描支付SDK等,及马甲情况,机器扫描主要看代码块,可参考百度蜘蛛抓取网站模块原理;如遇部分无法过机审情况可尝试加速绕过机审(不是100%成功); 
3,人工审核 
此处主要检测功能或者App体验测试,例如用测试账号登录App体验功能,或其他是否明显bug等,ipv6也在此处检测;

结合网上前辈的经验,对避规4.3的重点做了以下总结:

1.ipa包特征: 
包括有代码相似性,资源相似性; 
代码相似性解决办法:

  • 已有代码的混淆(改类名、改函数名、改文件名、改工程名) 
  • 添加一些无用的代码

资源相似性解决办法:

  • 资源改名 
  • 适当添加一些无用的资源 

2.开发者帐号:

  • 马甲包尽量不要关联到同一个开发者帐号

3.元数据配置相似性:

  • 针对收费产品,可以修改应用程序价格,打造与原产品不同的价格级别; 
  • 修改应用程序发布地区,打造与原产品不同的售卖地区或分不同地区运营; 
  • 修改产品分类,打造与原产品不同的产品侧重属性分类;

解决代码相似性

解决代码相似性的问题,在网上找到三个代码混淆小工具

附上三个常用的代码混淆工具github链接:

spamCode Git下载地址
https://github.com/oneyian/SpamCode
iOSMixProject Git地址
https://github.com/JourneyYoung/iOSMixProject
KLGenerateSpamCode
https://github.com/klaus01/KLGenerateSpamCode

主要说说KLGenerateSpamCode这个工具用于应对苹果对重复应用的审核(Guideline 4.3 Design Spam),避免苹果机审检测概率。 
主要功能 
1.修改工程名 
2.修改类名前缀 
3.扫描工程中的代码,生成同等数量的 Category 文件,文件中及是同等方法数量的垃圾代码。 
4.修改 xxx.xcassets 文件夹中的 png 资源文件名。 
5.删除代码中的所有注释和空行。

用法就不多讲了 github上已经讲的很清楚了。

如上,对上面提到的重点进行重新配置,然后使用KLGenerateSpamCode这个工具处理下代码,可以极大避免4.3情况的出现,祝好运!


实测:最近按上文中的方法,再次上传了2个应用,均是一次性通过。注意:图片压缩是必不可少的步骤,减少资源相似度,提高马甲包的通过率!

以下几点为我总结的经验,供各位参考:

1、审核人员是否会改变:首先我明确告知各位,APP如果不通过,将会一直由同一个审核人员审核。请不要妄想觉得我被拒绝后,延迟几天提交就能够换一个审核人员,这是思想是错误的;

2、关于4.3延迟审核时间:4.3审核结果将导致你的APP无法加急审核,不管你的理由有多么悲情多么振奋,都会被审核人员驳回。4.3延迟时间大概以下规定。第一次审核4.3:三个工作日;第二次4.3:14个工作日 ;第三次4.3:延迟一个月左右。期间请不要撤回。

3、进入审核多久出结果:理论上进入审核后一到二小时会出审核结果。实际审核结果基本1分钟就会给出尤其针对4.3开发者。(本人在一次和美国审核人员电话交涉中得出该结果。对方在美国周六下午拨打我电话,我要求她当场审核下我的APP,仅仅说话的功夫,她就得出4.3的结论。)

4、在解决中心回复4.3问题有用吗:绝大数4.3开发回复依旧会被认为是4.3。除非你本身APP在ios占有很大的数量,被审核人员认同。其他情况基本不会改变审核人员的结果。(ios这点审核人员规矩的很,不会和你讲人情。证据:依旧在于美国工作人员沟通中,本人表示是否可以将本人APP以非4.3的理由驳回,她表示不可以)

5、审核人员是否看的懂中文:苹果公司是一个全球性的工作,在其招聘官网明确要求招聘精通中文的审核人员。同时我在沟通当中了解到苹果公司有大量的华裔人员。所以你可以使用中文与审核人员邮件以及电话沟通。

6、解决中心以及电话沟通话给您解决办法吗:会。一般来说邮件沟通比较类似模板话术,在最后几句会加入苹果审核人员的个人建议以及看法。但是建议和看法都比较普遍 比如修改功能不要和其他app具有重复功能(我要能不重复,我还搞这些干嘛哈哈)

7、如何解决4.3问题:请不要再浪费时间在原包重新上传修改模板。立即移除APP并新建包,修改logo,模板。

Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage



We noticed that your app requests the user’s consent to access the Bluetooth, but doesn’t sufficiently explain the use of the Bluetooth in the purpose string.

To help users make informed decisions about how their data is used, all permission request alerts need to specify how your app will use the requested information.

Next Steps

Please revise the relevant purpose string in your app’s Info.plist file to specify why your app needs access to the user's Bluetooth. 

You can modify your app's Info.plist file using the property list editor in Xcode.

Resources

See examples of helpful, informative purpose strings
Review a list of relevant property list keys.

Please see attached screenshot for details.

中文翻译

5. 1.1法律:隐私-数据收集和存储
法律-隐私-数据收集和存储


我们注意到您的应用程序请求用户同意访问蓝牙,但在purpose字符串中没有充分解释蓝牙的使用。

为了帮助用户在知情的情况下决定如何使用他们的数据,所有的权限请求警报都需要指定你的应用程序将如何使用所请求的信息。

下一个步骤

请修改应用程序信息中的相关目的字符串。plist文件指定为什么你的应用程序需要访问用户的蓝牙。

你可以修改你的应用程序的信息。plist文件使用Xcode的属性列表编辑器。

资源

-参见有帮助的,有用的目的字符串的例子。
-检查相关属性列表键的列表。

详情见附件截图。

类似的隐私访问权限文案如下:

Privacy - Camera Usage Description (访问相机权限):“您的App名称”想访问您的相机,为了帮您扫描称重设备条形码、给车辆拍照等功能;

Privacy - Photo Library Usage Description (访问相册权限) :  “您的App名称”想访问您的相册,为了帮您上传车辆录入图片、设备维修图片等功能;

Privacy - Bluetooth Peripheral Usage Description (访问蓝牙外设权限) “您的App名称”想访问您的蓝牙,为了帮您在录车、维修、数据标定时通过蓝牙读取称重主机重量、传感器数据;

Privacy - Bluetooth Always Usage Description (蓝牙一直使用权限)“您的App名称”想访问您的蓝牙,为了帮您在录车、维修、数据标定时通过蓝牙读取称重主机重量、传感器数据;

Privacy - Location Usage Description (位置使用权限):“您的App名称”想访问您的位置,为了帮您获取附近待维修车辆,记录您录车、维修、数据标定等拍照操作时的地理位置

Guideline 5.0 - Legal


Recently, the Chinese Ministry of Industry and Information Technology (MIIT) requested that CallKit functionality be deactivated in all apps available on the China App Store.

During our review, we found that your app currently includes CallKit functionality and has China listed as an available territory in App Store Connect.

Next Steps

This app cannot be approved with CallKit functionality active in China. Please make the appropriate changes and resubmit this app for review.

If you have already ensured that CallKit functionality is not active in China, you may reply to this message in Resolution Center to confirm. 

Voice over Internet Protocol (VoIP) call functionality continues to be allowed but can no longer take advantage of CallKit’s intuitive look and feel. CallKit can continue to be used in apps outside of China.
 

中文翻译

准则5.0 -法律


近日,中国工业和信息化部(工信部)要求在中国App Store的所有应用程序中停用CallKit功能。

在我们的审查中,我们发现您的应用程序目前包括CallKit功能,并在app Store Connect中将中国列为可用区域。

下一个步骤

这个应用程序在中国不能通过CallKit功能激活。请做出适当的更改,并重新提交此应用程序以供审核。

如果您已经确认CallKit功能在中国没有激活,您可以在解决中心回复此消息进行确认。

VoIP (Voice over Internet Protocol)呼叫功能继续被允许,但不能再利用CallKit直观的外观和感觉。CallKit可以继续在中国以外的应用程序中使用。
 

解决方案:

直接回复:This function is not available in China. We have blocked users in China from using this function through the server(此功能在中国区不可用,我们通过服务器屏蔽了中国区的用户使用此功能)

睡得

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐