Capacitor-firebase-auth plugin causes app store rejections

Hi,

According to this blog post UIWebView references in CapacitorCordova pod shouldn’t trigger the warning (now rejection) from app store however since this week apple store is not letting me submit my ionic 5 with Capacitor and all packages with latest updates anymore.

You may notice “UIWebView” references within your Capacitor-based iOS project. Files within the “CapacitorCordova” pod, for example, relate to Cordova compatibility. These will not trigger the warning.

Taken from: https://ionicframework.com/blog/understanding-itms-90809-uiwebview-api-deprecation/

See the response of Apple on the screenshot below. I’m only using two Capacitor plugins which to my knowledge aren’t referencing UIWebView (see the second screenshot). These are the plugins I use:

    "capacitor-fcm": "^2.0.0",
    "capacitor-firebase-auth": "^0.3.1",

Is this the fault of Ionic or am I doing something wrong?

Here is my package.json file:

{
  "name": "xx",
  "version": "0.0.1",
  "private": true,
  "dependencies": {
    "@capacitor/android": "^2.0.2",
    "@capacitor/core": "^2.0.2",
    "@capacitor/ios": "^2.0.2",
    "@ionic/core": "^5.1.0",
    "@ionic/pwa-elements": "^1.5.2",
    "@ionic/react": "^5.1.0",
    "@ionic/react-router": "^5.1.0",
    "@types/node": "^12.12.38",
    "@types/react-dom": "^16.9.7",
    "@types/react-router": "^5.1.7",
    "@types/react-router-dom": "^5.1.5",
    "axios": "^0.19.2",
    "capacitor-fcm": "^2.0.0",
    "capacitor-firebase-auth": "^0.3.1",
    "countries-code": "^1.0.8",
    "date-fns": "^2.12.0",
    "firebase": "^7.14.2",
    "ionicons": "^5.0.1",
    "jetifier": "^1.6.5",
    "libphonenumber-js": "^1.7.51",
    "react": "^16.10.2",
    "react-dom": "^16.10.2",
    "react-hook-form": "^5.6.1",
    "react-router": "^5.1.0",
    "react-router-dom": "^5.1.0",
    "react-scripts": "^3.3.1",
    "typescript": "^3.7.5"
  },
  "scripts": {
    "start": "npm-run-all -p start:css start:js",
    "build": "npm-run-all build:css build:js",
    "start:js": "react-scripts start",
    "build:js": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject",
    "ionic:build": "npm run build && npx cap copy android && npx cap copy ios",
    "ionic:serve": "npm run start",
    "start:css": "postcss src/styles/styles.src.css -o src/styles/index.css -w",
    "build:css": "postcss src/styles/styles.src.css -o src/styles/index.css --env production"
  },
  "eslintConfig": {
    "extends": [
      "react-app",
      "plugin:@ionic/recommended",
      "plugin:prettier/recommended",
      "prettier",
      "prettier/@typescript-eslint"
    ],
    "plugins": [
      "prettier"
    ],
    "env": {
      "browser": true,
      "node": true,
      "es6": true
    },
    "rules": {
      "prettier/prettier": [
        "error",
        {
          "endOfLine": "auto",
          "trailingComma": "none"
        }
      ],
      "@typescript-eslint/no-var-requires": "off"
    },
    "settings": {
      "react": {
        "pragma": "React",
        "version": "detect"
      }
    },
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
      "project": "./tsconfig.json",
      "ecmaFeatures": {
        "jsx": true
      }
    }
  },
  "browserslist": {
    "production": [
      ">0.2%",
      "not dead",
      "not op_mini all"
    ],
    "development": [
      "last 1 chrome version",
      "last 1 firefox version",
      "last 1 safari version"
    ]
  },
  "devDependencies": {
    "@capacitor/cli": "^2.0.2",
    "@fullhuman/postcss-purgecss": "^2.2.0",
    "@ionic/eslint-plugin": "0.0.1",
    "@types/jest": "^24.9.1",
    "autoprefixer": "^9.7.6",
    "eslint-config-prettier": "^6.11.0",
    "eslint-plugin-prettier": "^3.1.3",
    "npm-run-all": "^4.1.5",
    "postcss-cli": "^7.1.1",
    "prettier": "^2.0.5",
    "tailwindcss": "^1.4.4",
    "tailwindcss-pseudo-elements": "^1.1.2"
  },
  "description": "An Ionic project"
}

capacitor.config.json

{
  "appId": "xxx",
  "appName": "xxx",
  "bundledWebRuntime": false,
  "npmClient": "npm",
  "webDir": "build",
  "cordova": {},
  "android": {
    "webContentsDebuggingEnabled": true
  },
  "server": {
  },
  "plugins": {
    "CapacitorFirebaseAuth": {
      "providers": [
        "phone"
      ],
      "languageCode": "en",
      "nativeAuth": false
    }
  }
}

Screenshots of error and references:

This was the fault of capacitor-firebase-auth plugin. See here:

1 Like