Já falamos aqui sobre o Windows Bridge para iOS, uma ponte que permite trazer apps iOS para o Windows. Agora vamos ver na prática como importar um projeto Xcode para o Visual Studio e executar no Windows!
Lembrando que a bridge ainda está em desenvolvimento e nem todas as apps podem funcionar corretamente, por isso a importância de testes e contribuições para ajudar a melhorar sempre essa ponte.
Pré-requisitos
- Windows 10
- Visual Studio 2015 com Windows developer tools
- Projeto iOS (baixe aqui um exemplo de Hello World)
Se você não tem o Visual Studio, pode baixar o Visual Studio Community 2015 aqui
Build do SDK
Caso já tenha o Windows Bridge iOS instalado, pule essa etapa.
Primeiramente, vamos compilar o projeto para gerar o zip do SDK, para isso, siga os próximos passos:
- Clone o repositório
git clone https://github.com/Microsoft/WinObjC
- Dentro do repositório vá para o diretório build e abra o arquivo build.sln para abrir a solução do projeto no Visual Studio. Caso necessário, o Visual Studio irá solicitar a instalação de alguns componentes
- Mude o Build Type para Release
- Botão direito no projeto Package dentro da Solution e selecione Build
- O SDK winobjc.zip será criado em build/SDKPackage/Release
Instalando o SDK
Para instalar o SDK, descompacte o winobjc.zip em algum diretório do seu computador, por exemplo c:\winobjc
Importando o projeto
Para importar o projeto do Xcode vamos usar o vsimporter, essa ferramenta importa o projeto iOS dentro de um novo projeto Universal Windows Platform (UWP) no Visual Studio, com suporte a Objective-C.
A ferramenta se encontra em
c:\winobjc\bin\vsimporter.exe
Agora precisamos abrir o diretório do projeto iOS no Prompt
C:\>cd C:\HelloWorld_iPhone
Com a pasta do projeto aberta só precisamos chamar a ferramenta vsimporter
C:\HelloWorld_iPhone>C:\winobjc\bin\vsimporter.exe
A ferramenta irá importar o projeto para o Visual Studio
Generated C:\HelloWorld_iPhone\HelloWorld.vsimporter\HelloWorld-Headers-WinStore10\HelloWorld-Headers.vcxitems
Generated C:\HelloWorld_iPhone\HelloWorld.vsimporter\HelloWorld-WinStore10\HelloWorld.vcxproj
Generated C:\HelloWorld_iPhone\HelloWorld-WinStore10.sln
Você pode passar o comando opcional -i ao executar o vsimporter, esse comando permite a escolha de configurações de build do Xcode. Por padrão o vsimporter gera a solução do Visual Studio para o target Windows 10. Se você preferir, pode gerar com target de Windows 8.1 (Phone ou Store) usando o comando -format e especificar com winstore8.1, winphone8.1 e winstore10 (winstore10 é padrão).
Executando o app
Abra a solução do Visual Studio HelloWorld-WinStore10.sln
, selecione o projeto Universal Windows como projeto inicial (botão direito no projeto > Set as StartUp Project) e execute o projeto no Windows.
Na primeira imagem temos o aplicativo sendo executado no iPhone. Na segunda o app sendo executado no Windows 10 como Universal Windows Platform
O que está em desenvolvimento
- Autolayout
- Suporte à Storyboard
- MapKit
- AssetsLibrary
- AddressBook
- Ads
- Objective-C annotations
- Captura de Mídia e Playback
- Suporte à ARM (Hoje só tem x86)
Se tiverem alguma dúvida sobre o assunto, deixem seus comentários que vamos te ajudar.
Até a próxima.
e quando da este erro na compiacao do app windows
MSB3073 The command “”C:\winobjc\msvc\..\bin\acbuilder.exe” –target-device iphone –target-device ipad –compile “” “”” exited with code 1.
CurtirCurtir
Apenas pelo erro fica difícil dizer, teria como dar mais detalhes dos passos feitos e como é o app do iOS? Lembrando sempre que é uma versão de testes e ainda muitos recursos do iOS não suportados pelo VS por enquanto.
CurtirCurtir