Comment importer des en-têtes de structure privés dans un cadre Swift?

J'ai un cadre Objective-C (cadre A) qui expose certains en-têtes publics et certains en-têtes privés. Les en-têtes publics sont également déclarés dans l'en-tête du cadre. J'ai un deuxième cadre Swift (cadre B) qui est lié au cadre Objective-C.

Maintenant, si je veux importer les en-têtes publics de A dans BI, il suffit de faire une import A

Mais comment puis-je importer les en-têtes privés?

Je sais qu'un en-tête de pontage n'est pas une option car cela n'est pas supporté par les frameworks. Ai-je besoin de créer en quelque sorte un en-tête de parapluie séparé pour les en-têtes privés?

    Vous devez modifier le framework A , afin qu'il exporte un module privé.

    1. Créez un file de carte de module privé dans A projet. Ce serait quelque chose comme ceci:

      Un / private.modulemap :

       explicit module A.Private { // Here is the list of your private headers. header "Private1.h" header "Private2.h" export * } 
    2. Dans les "Paramètres de construction" de la cible de la structure A , searchz la ligne "Private Map Map File" et faites en sorte que:

       $(SRCROOT)/A/private.modulemap 
    3. N'incluez pas le file private.modulemap dans "Comstack Sources". Cela provoque des avertissements inutiles.

    4. Nettoyer et build un cadre A cible.

    5. Dans le cadre B files Swift. vous pouvez importer le module privé comme ceci:

       import A import A.Private