2017-09-25 10 views
1

J'ai récemment développé des extensions natives pour des projets mobiles sur Adobe AIR (Android et iOS).Comment créer AIR Native Extension pour Windows avec C#?

Je veux porter ces ANE pour les projets de bureau sous Windows et OSX. La partie OSX n'est pas un problème car elle utilise les mêmes mécanismes que pour iOS. Le problème est essentiellement du côté Windows. Adobe AIR propose des ponts pour écrire la partie native en C/C++, je préfère utiliser C# pour simplifier la tâche et accéder plus simplement aux bibliothèques .NET.

Est-ce que quelqu'un a déjà entendu parler d'expériences ou de projets viables pour coder une extension Adobe AIR native avec C#?

Je n'ai pas trouvé une solution complète pour y parvenir:

  • Créer une DLL en C# y compris l'accès à FlashRuntimeExtensions.h (fichier C en-tête)
  • pouvoir utiliser les bibliothèques .NET de cette DLL unique,
  • Produire un seul fichier DLL
  • ne pas utiliser la bibliothèque flash.desktop.NativeProcess

Th Je vous demande votre aide ou un point de vue différent sur ces questions.

Répondre

1

Un développeur m'a envoyé this link à la page GitHub FreSharp de TUARUA.

Cela correspond exactement au sujet de ma question. Je le partage afin que tout le monde puisse voir comment créer un ANE (AIR Native Extension) à partir de C# sous Windows. Je vais donc pouvoir reprendre mon développement et mettre en ligne mes librairies pour les ordinateurs de bureau.

Merci à tous.

1

Selon Extending AIR, vous avez juste besoin d'accéder à n'importe quelle fonction sur votre DLL quelle que soit la méthode native utilisée pour le créer. Cela signifie que vous devez toujours utiliser un projet C++ pour lier AIR à votre bibliothèque native, mais le code principal peut être fait sur C#. Donc, vous exportez votre code principal/logique dans une DLL à partir de C#, puis utilisez le projet pont C++ pour lier DLL et flash.

Ce lien pourrait aussi être utile: Windows ANE - tutorial introduction

+0

Merci pour ces liens. Je les ai lu plusieurs fois. Mais c'est en fait un très bon point de départ pour les autres développeurs AS3 intéressés par le sujet. –