升级到React Native 0.59.3之后,我有两个应用程序使用不同的帐户,在2.3.1 - Performance主题下被拒绝。除了RN升级,此应用程序中没有任何更改。

但是,这两个应用程序都没有使用混淆的代码,选择器修饰或旨在颠覆“应用程序审查”过程的功能。两者都是可以根据API数据自然更改其内容的应用程序,就像其他许多应用程序(如Facebook,Twitter,Instagram等)一样。

两者都是使用react-native init创建的简单应用,并且已于1年前发布,适用于Android和iOS。我们没有使用Codepush,测试A/B或其他技术来更改运行时中的应用行为。

是否有人遭受过同样的拒绝或有解决此问题的提示?

苹果拒绝消息:



package.json的:

应用程式A:

{
  "name": "app A",
  "version": "1.0.0",
  "private": true,
  "scripts": {
    "start": "node node_modules/react-native/local-cli/cli.js start",
    "test": "jest"
  },
  "dependencies": {
    "@react-native-community/async-storage": "1.2.2",
    "@react-native-community/netinfo": "1.4.1",
    "@remobile/react-native-action-sheet": "1.0.2",
    "eureka-rn-components": "git+file:../gileade-eureka-rn-components#02c50a043070648205def50940c1282d2b749c89",
    "functional-masks": "git+https://github.com/ktabriga/functional-masks.git#d5f5f01fe6731fc1c0879b8afb8f239591a2f984",
    "lodash": "4.17.2",
    "moment": "2.16.0",
    "normalizr": "3.1.0",
    "numeral": "1.5.3",
    "prop-types": "15.6.2",
    "ramda": "0.23.0",
    "react": "16.8.3",
    "react-native": "0.59.3",
    "react-native-action-button": "2.6.2",
    "react-native-autocomplete-input": "3.6.0",
    "react-native-datepicker": "1.6.0",
    "react-native-deprecated-custom-components": "0.1.2",
    "react-native-device-info": "0.25.1",
    "react-native-dropdownalert": "3.9.1",
    "react-native-elements": "0.18.0",
    "react-native-fcm": "13.3.3",
    "react-native-global-props": "1.1.1",
    "react-native-image-crop-picker": "0.18.2",
    "react-native-infinite-scroll-view": "0.4.5",
    "react-native-masked-text": "1.5.2",
    "react-native-modal-selector": "1.0.2",
    "react-native-permissions": "1.1.1",
    "react-native-progress-circle": "2.0.1",
    "react-native-side-menu": "1.1.3",
    "react-native-simple-modal": "6.0.0",
    "react-native-swiper": "1.5.5",
    "react-native-vector-icons": "6.2.0",
    "react-redux": "4.4.6",
    "redux": "3.6.0",
    "redux-logger": "2.7.4",
    "redux-persist": "4.0.0-beta1",
    "redux-promise-middleware": "4.1.0",
    "redux-thunk": "2.1.0",
    "reselect": "2.5.4",
    "string-mask": "0.3.0",
    "url-join": "4.0.0"
  },
  "jest": {
    "preset": "jest-react-native"
  },
  "devDependencies": {
    "@babel/core": "7.4.0",
    "@babel/runtime": "7.4.2",
    "@react-native-community/eslint-config": "0.0.3",
    "babel-jest": "24.5.0",
    "eslint": "5.16.0",
    "jest": "24.5.0",
    "metro-react-native-babel-preset": "0.53.1",
    "react-test-renderer": "16.8.3"
  }
}

应用B:

{
    "name": "app B",
    "version": "0.0.1",
    "private": true,
    "scripts": {
        "start": "node node_modules/react-native/local-cli/cli.js start",
        "test": "jest",
        "lint": "eslint ."
    },
    "dependencies": {
        "@react-native-community/async-storage": "1.3.3",
        "axios": "0.18.0",
        "bluebird": "3.5.1",
        "jwt-decode": "2.2.0",
        "moment": "2.21.0",
        "prop-types": "15.6.1",
        "react": "16.8.3",
        "react-native": "0.59.3",
        "react-native-charts-wrapper": "0.4.2",
        "react-native-datepicker": "1.7.2",
        "react-native-device-info": "0.25.1",
        "react-native-elements": "0.19.0",
        "react-native-exit-app": "1.0.0",
        "react-native-fcm": "14.1.0",
        "react-native-keyboard-manager": "4.0.13-10",
        "react-native-simple-dialogs": "1.1.0",
        "react-native-splash-screen": "3.1.1",
        "react-native-vector-icons": "6.2.0",
        "react-navigation": "1.5.2",
        "vanilla-masker": "1.2.0",
        "wolfy87-eventemitter": "5.2.5"
    },
    "devDependencies": {
        "@babel/core": "7.4.0",
        "@babel/runtime": "7.4.2",
        "@react-native-community/eslint-config": "0.0.3",
        "babel-jest": "24.5.0",
        "babel-plugin-transform-remove-console": "6.9.0",
        "eslint": "5.16.0",
        "jest": "24.5.0",
        "metro-react-native-babel-preset": "0.53.1",
        "react-test-renderer": "16.8.3"
    },
    "jest": {
        "preset": "react-native"
    }
}

最佳答案

我的应用也被拒绝了。但是,在解决中心回复后,我说过我不会使用混淆代码,而是询问了拒绝原因的详细信息。就像这样,我收到一条通知,通知我我的应用程序正在审核中,大约10秒钟后,我的应用程序被批准并发布了:-)

在我看来,这似乎要么是苹果方面的错误,要么是由诸如AFNetworking,Realm等流行框架之一(它们在其中使用NSStringFromSelector,NSStringFromClass等)触发的,但是由于它的规模很大,每个人都在解释其用法以几乎相同的方式使应用程序自动获得批准(但您必须在解决中心进行回复才能触发第二次审核过程)。希望这可以帮助。

关于react-native - 在升级到React Native 0.59之后,Apple拒绝了二进制文件(2.3.1-Performance),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55783050/

10-13 08:01