Menu

A

|

A

Astuces : Xamarin / VS2013 / Android

Astuces : Xamarin / VS2013 / Android

Je me suis mis récemment au développement sous Xamarin et plus précisément Xaramin pour Android. Après avoir installé Xamarin, j’ai cru bêtement qu’en créant un nouveau projet Android et en cliquant sur exécuter, cela allait fonctionner … grave erreur ! En effet, j’ai eu toute une série de problème, pas forcément simple à comprendre au premier abord, mais qui dégrade foncièrement votre première relation avec Xamarin. Comme je suis quelqu’un de gentil, je vais exposer les problèmes que j’ai eus, mais surtout les solutions à mettre en œuvre pour s’en sortir.

Problème N°1 : Antivirus et compilateur

Lors de ma première compilation du projet vide « Xamarin for Android« , la première erreur que j’ai eue est la suivante :

  • Access to the path ‘resources.apk.bk’ is denied.
  • The directory is not empty.

Et là grand moment de solitude, qu’est-ce qui se passe ? Où il est ce fichier ? De quel répertoire il parle ? Bref la panique. J’ai cherché longtemps la solution, j’ai fini par trouver un post sur le forum Xamarin, perdu parmi le flot de post de support. En effet, au moment de la compilation, quand le compilateur essaye de lié les ressources, il fait un accès au fichier sus nommé au-dessus, et là, pour une raison qui m’échappe encore aujourd’hui, mon antivirus (McCafee en l’occurrence) empêche le processus du compilateur d’accéder à cette ressource. Il doit sûrement prendre cette action pour une infiltration de la NSA dans notre ordinateur, qui sait.

Et là, deux alternative s’offre à vous :

  • Désinstaller l’antivirus (ce que j’ai dû faire).
  • Créer un répertoire ou mettre votre projet et qui échappe à la vigilance de l’antivirus.

La solution est donc au choix, sachant que je ne sais pas si tous les antivirus provoque ce problème. En tout cas, si cela vous arrive, vous savez quoi faire !

Problème N°2 : Arborescence du SDK Android et compilateur

Oui, car au final, c’est toujours avec le compilateur que j’ai des problèmes, mais pour être plus précis, dans ce cas, c’est au moment de la création du package Android que ça se passe. Quand le déploiement commence et que Xamarin crée le package Android, oh joie voici la réponse :

fail

 

Et là aussi, incompréhension. J’ai donc continué l’archéologie sur les forums de Xamarin pour tomber sur un post de l’équipe qui précise que depuis une certain version du SDK Android, l’arborescence des fichiers ont changé et en gros Xamarin ne retrouve pas ses petits. Pour être plus précis, il n’arrive pas à localiser le fichier « zipalign.exe » qui permet de faire le fameux package.

La solution est donc on ne peut plus simple, il suffit de copier ce dit fichier qui se trouve en fait dans (si vous avez installé le SDK dans le chemin par défaut, sinon à vous de le localiser) => « C:\Users\{User}\AppData\Local\Android\android-sdk\build-tools\{Version}« , ou « User » et votre nom de votre compte et « version » la version du sdk que vous utilisez, je vous conseille d’ailleurs de prendre la version la plus haute, apparemment cela fonctionne sur toutes les autres (personnellement je compile en 17 et j’ai pris la 20). Ensuite, copiez le fichier dans ce répertoire => « C:\Users\{User}\AppData\Local\Android\android-sdk\tools« . Et là magie, cela fonctionne.

UPDATE 11/07/14 : Xamarin vient de sortir un patch correctif sur cette partie, donc plus de soucis avec « Zipalign.exe ».

Astuces : Xamarin / VS2013 / Android

Astuces : Xamarin / VS2013 / Android

Je me suis mis récemment au développement sous Xamarin et plus précisément Xaramin pour Android. Après avoir installé Xamarin, j’ai cru bêtement qu’en créant un nouveau projet Android et en cliquant sur exécuter, cela allait fonctionner … grave erreur ! En effet, j’ai eu toute une série de problème, pas forcément simple à comprendre au premier abord, mais qui dégrade foncièrement votre première relation avec Xamarin. Comme je suis quelqu’un de gentil, je vais exposer les problèmes que j’ai eus, mais surtout les solutions à mettre en œuvre pour s’en sortir.

Problème N°1 : Antivirus et compilateur

Lors de ma première compilation du projet vide « Xamarin for Android« , la première erreur que j’ai eue est la suivante :

  • Access to the path ‘resources.apk.bk’ is denied.
  • The directory is not empty.

Et là grand moment de solitude, qu’est-ce qui se passe ? Où il est ce fichier ? De quel répertoire il parle ? Bref la panique. J’ai cherché longtemps la solution, j’ai fini par trouver un post sur le forum Xamarin, perdu parmi le flot de post de support. En effet, au moment de la compilation, quand le compilateur essaye de lié les ressources, il fait un accès au fichier sus nommé au-dessus, et là, pour une raison qui m’échappe encore aujourd’hui, mon antivirus (McCafee en l’occurrence) empêche le processus du compilateur d’accéder à cette ressource. Il doit sûrement prendre cette action pour une infiltration de la NSA dans notre ordinateur, qui sait.

Et là, deux alternative s’offre à vous :

  • Désinstaller l’antivirus (ce que j’ai dû faire).
  • Créer un répertoire ou mettre votre projet et qui échappe à la vigilance de l’antivirus.

La solution est donc au choix, sachant que je ne sais pas si tous les antivirus provoque ce problème. En tout cas, si cela vous arrive, vous savez quoi faire !

Problème N°2 : Arborescence du SDK Android et compilateur

Oui, car au final, c’est toujours avec le compilateur que j’ai des problèmes, mais pour être plus précis, dans ce cas, c’est au moment de la création du package Android que ça se passe. Quand le déploiement commence et que Xamarin crée le package Android, oh joie voici la réponse :

fail

 

Et là aussi, incompréhension. J’ai donc continué l’archéologie sur les forums de Xamarin pour tomber sur un post de l’équipe qui précise que depuis une certain version du SDK Android, l’arborescence des fichiers ont changé et en gros Xamarin ne retrouve pas ses petits. Pour être plus précis, il n’arrive pas à localiser le fichier « zipalign.exe » qui permet de faire le fameux package.

La solution est donc on ne peut plus simple, il suffit de copier ce dit fichier qui se trouve en fait dans (si vous avez installé le SDK dans le chemin par défaut, sinon à vous de le localiser) => « C:\Users\{User}\AppData\Local\Android\android-sdk\build-tools\{Version}« , ou « User » et votre nom de votre compte et « version » la version du sdk que vous utilisez, je vous conseille d’ailleurs de prendre la version la plus haute, apparemment cela fonctionne sur toutes les autres (personnellement je compile en 17 et j’ai pris la 20). Ensuite, copiez le fichier dans ce répertoire => « C:\Users\{User}\AppData\Local\Android\android-sdk\tools« . Et là magie, cela fonctionne.

UPDATE 11/07/14 : Xamarin vient de sortir un patch correctif sur cette partie, donc plus de soucis avec « Zipalign.exe ».

No Comments

Comments Are Closed