0
votes

Comment désactiver la capacité Bluetooth avec Cordoue pour iOS pour éviter l'erreur de NsBluetoothAutoothToothAutootoart

Je développe une application pour iOS / Android avec Cordoue et l'application n'a aucune fonction pour utiliser Bluetooth. Probablement après avoir lancé IOS 13, j'ai du mal à publier une nouvelle version de mon application à AppStoreconnect. J'ai reçu un e-mail d'alerte d'Apple à noter que NSBLUETOOTHALADESCOREDESSIONCIGEDESSIONCIGEDESCREDESSIONCIGEDESSION DANS L'INFO-Plist.

Comme mentionné ci-dessus, je n'ai pas besoin de fonction Bluetooth pour mon application, mais une partie du plugin l'utilise probablement sans mon intension.

Si quelqu'un a le même problème, s'il vous plaît laissez-moi savoir la solution.

suivi est mon environnement.

CORDOVA

  • CORDOVA 7.1.0

    plugins

    • CORDOVA-ADMOB-SDK 0.22.0 "Admob SDK"
    • Cordova-plugin-admob-wagon 0.25.0 "CORDOVA ADMOB Plugin"
    • Cordova-plugin-badge 0.8.7 "Badge"
    • Cordova-plugin-inapprowser 3.0.0 "inapprowser"
    • Cordova-plugin-SplashScreen 5.0.2 "SplashScreen"
    • CORDOVA-Plugin-Statusbar 2.4.2 "Barre d'état"
    • Cordova-plugin-swift-support 3.1.1 "Swiftsupport"
    • Cordova-plugin-whitelist 1.3.3 "Whitelist"
    • Cordova-plugin-wkwebview-Moteur 1.1.4 "CORDOVA WKWEBVIEW Moteur"
    • Cordova-plugin-x-toast 2.6.2 "Toast"
    • Cordova-Promaviste-Polyfill 0,0.2 "Cordova-Promaviste-Polyfill"
    • CORDOVA-SQLITE-STOCKING 2.3.1 "CORDOVA SQLITE STOCKIN Plugin"
    • PhoneGap-Plugin-Barcodescannner 8.0.0 "Barcodescanner"
    • PhoneGap-plugin-push 2.1.3 "pushplugin"

      J'aimerais désactiver la fonction Bluetooth et faire passer mon application à AppleStoreconnect.


0 commentaires

3 Réponses :


0
votes

Ceci est la déclaration officielle que vous recevez de l'équipe de révision si cette chaîne manque:

iTMS-90683: chaîne d'objet manquante dans Info.plist - Le code de votre application fait référence à une ou plusieurs API qui accèdent aux données utilisateur sensibles. Le fichier info.Plist de l'application doit contenir une clé NSBLUETOOTHAOTANDAUSEDESSEDESSEDESSEDESSIONS avec une chaîne d'objet face à l'utilisateur expliquant clairement et complètement pourquoi votre application nécessite les données. À compter du printemps 2019, toutes les applications soumises à l'App Store qui accèdent aux données des utilisateurs sont nécessaires pour inclure une chaîne d'usage. Si vous utilisez des bibliothèques externes ou des SDK, elles peuvent faire référence aux API nécessitant une chaîne d'usage. Bien que votre application puisse ne pas utiliser ces API, une chaîne d'objet est toujours requise . Vous pouvez contacter le développeur de la bibliothèque ou de la SDK et de demander qu'ils publient une version de leur code qui ne contient pas les API.

Comme mentionné dans cette déclaration, il est très probable que l'un des plugins que vous utilisez des références L'API Bluetooth. Et même si vous êtes pas à l'aide de cette API dans votre application, vous devez toujours fournir la chaîne d'usage.

Alors la solution la plus facile et la plus rapide (et comment je l'ai fait moi-même) est la suivante: fournir simplement la chaîne et l'examen passera. Vous pouvez facilement ajouter cette chaîne au * - info.plist ceci à l'aide du plugin CORDOVA-CUSTOM-CONFIG .


1 commentaires

Merci pour votre réponse et excusez-vous pour une réponse tardive. J'ai ajouté la description à CONFIG.XML comme suit. xxx J'ai réussi à publier l'application à Appstoreconnect et j'attends l'examen.



0
votes

Je confirme que le problème provient de AdMob SDK (Cordova-Admob-SDK), une dépendance de Cordova-Plugin-Sans administrateur.

Savez-vous quelle est la raison d'utilisation (framework CoreBlumetooth dans AdMob SDK) s'il vous plaît? Ou il y a une solution pour ne pas utiliser ce cadre?


2 commentaires

Veuillez utiliser uniquement le formulaire de réponse pour écrire des réponses directes à la question. Si vous avez une nouvelle question, utilisez le bouton "Posez une question".


Merci pour vos informations. Comme mentionné, Cordova-Admob-SDK utilise une fonction Bluetooth. J'ai commenté le code associé mais cela ne pouvait pas fonctionner. Dans Gitlab, le même problème est défini mais pas de réponse jusqu'à présent. gitlab.com/ratson/cordova-admob-sdk/issues/2<



0
votes

Le problème est dû au fait que le plugin Cordova-admob-sdk code> dépend du cadre CoreBluetooth.framework code> Cadre. Cela aurait été bien si nous pouvions configurer le plugin ne doit pas dépendre du Bluetooth code>. Donc, jusqu'à ce que le plugin fixe cette partie, nous pouvons résoudre le problème de deux manières différentes.

solution 1: strong> p>

Une solution consiste à ajouter une déclaration indiquant que votre application utilise Bluetooth code>. Il peut être configuré dans votre config.xml code>. P>

<platform name="ios">
    ...
    <config-file parent="NSBluetoothAlwaysUsageDescription" platform="ios" target="*-Info.plist">
       <string>
           This app requires access to your bluetooth. blah blah blah
       </string>
    </config-file>
    ...
</platform>


0 commentaires