{"id":15172116,"url":"https://github.com/redone06/xamarinapps","last_synced_at":"2026-02-17T01:33:16.234Z","repository":{"id":187482484,"uuid":"676991548","full_name":"RedONe06/XamarinApps","owner":"RedONe06","description":"📘 Cursos Alura - Xamarin parte 1, Xamarin parte 2, Xamarin parte 3, Xamarin parte 4","archived":false,"fork":false,"pushed_at":"2023-09-13T16:36:55.000Z","size":823,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-19T23:07:17.287Z","etag":null,"topics":["alura","android","xamarin"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RedONe06.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-08-10T13:37:10.000Z","updated_at":"2023-09-08T12:29:44.000Z","dependencies_parsed_at":"2024-09-27T09:41:05.890Z","dependency_job_id":"03bdbdce-e4ce-4f7f-87ee-2feb638a9934","html_url":"https://github.com/RedONe06/XamarinApps","commit_stats":{"total_commits":31,"total_committers":2,"mean_commits":15.5,"dds":"0.22580645161290325","last_synced_commit":"6d4154b99807e54f8b16ce0e3d2f61cbda671fa2"},"previous_names":["redone06/xamarinapps"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/RedONe06/XamarinApps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedONe06%2FXamarinApps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedONe06%2FXamarinApps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedONe06%2FXamarinApps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedONe06%2FXamarinApps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RedONe06","download_url":"https://codeload.github.com/RedONe06/XamarinApps/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedONe06%2FXamarinApps/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263099438,"owners_count":23413622,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["alura","android","xamarin"],"created_at":"2024-09-27T09:40:59.574Z","updated_at":"2025-10-07T16:57:08.460Z","avatar_url":"https://github.com/RedONe06.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Xamarin1](https://github.com/RedONe06/XamarinApps/assets/98191980/fe3273b6-a147-472b-b327-2267204222b6)\n\u003cimg src=\"https://img.shields.io/static/v1?label=by\u0026message=Alura\u0026color=blue\u0026style=for-the-badge\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=.NET 2.0\u0026color=darkblue\u0026style=for-the-badge\u0026logo=.NET\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=C%23\u0026color=darkblue\u0026style=for-the-badge\u0026logo=csharp\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=Xamarin\u0026color=darkblue\u0026style=for-the-badge\u0026logo=xamarin\"\u003e\n# Xamarin parte 1: Crie aplicativos mobile com Visual Studio \n## Descrição do sistema\n\nO projeto se trata de um **aplicativo multiplataforma** construído a partir do Visual Studio. O sistema é um aplicativo de **Teste Drive** onde é possível escolher um carro a partir de uma listagem, definir características que alteram o preço final e agendar um horário para utilizar o carro alugado. Utilizou-se as ferramentas do [Xamarin](https://learn.microsoft.com/pt-br/xamarin/get-started/what-is-xamarin) para a construção do serviço e teve como base o curso _\"Xamarin parte 1: crie aplicativos mobile com Visual Studio\"_ disponível pela Alura.\n\n## Sobre o curso\n\n- Instalação de ambiente Xamarin para Visual Studio;\n- Criação de páginas XAML em projeto com padrão MVVM (Model-View-ViewModel);\n- Utilização de tags como StackLayout, Grid, ListView, Label, TableView, EntryCell, DatePicker e  TimePicker;\n- Utilização de propriedades como OnPropertyChanged e alteração dinâmica de teclados para cada tipo de dados;\n- Exibição de mensagens por DisplayAlert();\n- Conceito de _Data Binding_ para tratamento no _code behind_;\n\n  \n![Xamarin2](https://github.com/RedONe06/XamarinApps/assets/98191980/ec706674-115e-4bc1-855f-5e30f5c511d2)\n\u003cimg src=\"https://img.shields.io/static/v1?label=by\u0026message=Alura\u0026color=blue\u0026style=for-the-badge\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=.NET 2.0\u0026color=pink\u0026style=for-the-badge\u0026logo=.NET\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=C%23\u0026color=pink\u0026style=for-the-badge\u0026logo=csharp\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=Xamarin\u0026color=pink\u0026style=for-the-badge\u0026logo=xamarin\"\u003e\n\n# Xamarin parte 2: Crie aplicativos mobile com Visual Studio\n## Descrição do sistema\n\nO projeto agora respeita o padrão **MVVM (Model View ViewModel)** e para isso utilizou-se de comandos e troca de mensagens entre classes. A listagem agora é realizada a partir de uma chamada para uma **API REST** que aguarda com um _ActivityIndicator_ e a aplicação só permite a confirmação dos agendamentos caso os campos sejam preenchidos corretamente.\n\n## Sobre o curso\n\n- Ajuste da arquitetura: desacoplamento do code behind em camadas intermediárias de ViewModel;\n- Herança de classes para resgate de interfaces e métodos como OnPropertyChanged;\n- Utilização de _MessagingCenter_ da mensageria do Xamarin Forms para evitar acoplamento;\n- Utilização de ações realiazadas por _Command_ e não pelos eventos de _Clicked_;\n- Conexão da lista de veículos a um servidor externo de Fipe através de um serviço HTTP GET;\n- Utilização de novos conceitos como: _ContentPage.BindingContext_, _SelectedItem_, _OnAppearing_ e _OnDisappearing_, _Subscribe_ e _Unsubscribe_, _MessagingCenter_, _Command_ e _ICommand_, HTTP GET  e _StringAsync_, _DisplayAlert_ com 2 condições, _ChangeCanExecute()_, _ActivityIndicator_, etc.\n  \n![Xamarin3](https://github.com/RedONe06/XamarinApps/assets/98191980/82c0d12b-4c41-4fd7-a279-c3a96c69ac31)\n\u003cimg src=\"https://img.shields.io/static/v1?label=by\u0026message=Alura\u0026color=blue\u0026style=for-the-badge\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=.NET 2.0\u0026color=green\u0026style=for-the-badge\u0026logo=.NET\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=C%23\u0026color=green\u0026style=for-the-badge\u0026logo=csharp\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=Xamarin\u0026color=green\u0026style=for-the-badge\u0026logo=xamarin\"\u003e\n\n# Xamarin parte 3: Crie aplicativos mobile com Visual Studio\n## Descrição do sistema\n\nEntre as atualizações no projeto estão: tela de login com todas as propriedades e excessões da interface e um menu lateral com as informações do perfil e abas de edição. Além da estilização do projeto.\n\n## Sobre o curso\n\n- Implementação da tela de login com imagem e campos de texto com definições corretas para teclado e excessões.\n- Implementação de um menu lateral _FlyoutPage_ com abas por _TabbedPage_ mostrando os dados do usuário que fez login e permitindo editar por dois botões.\n- Habilitar e desabilitar campos por meio de Conversor\n- Utilização de conceitos como: _Converter_ e _IValueConverter_, navegação entre abas por _CurrentPage()_, tratamento de excessões por _DisplayAlert_, etc.\n\n![Projeto](https://github.com/RedONe06/XamarinApps/assets/98191980/613a9a16-8b0c-4fc1-a128-df1cc6fd96d7)\n\u003cimg src=\"https://img.shields.io/static/v1?label=by\u0026message=Alura\u0026color=blue\u0026style=for-the-badge\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=.NET 2.0\u0026color=red\u0026style=for-the-badge\u0026logo=.NET\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=C%23\u0026color=red\u0026style=for-the-badge\u0026logo=csharp\"\u003e \u003cimg src=\"https://img.shields.io/static/v1?label=Tech\u0026message=Xamarin\u0026color=red\u0026style=for-the-badge\u0026logo=xamarin\"\u003e\n\n# Xamarin parte 4: Crie aplicativos mobile com Visual Studio\n## Descrição do sistema\n\nEnte as atualizações no projeto estão: acesso a câmera nativa do dispositivo para registrar foto de perfil, utilização do banco de dados local para criação de banco relacional contendo todos os agendamentos registrados, implementação de página de visualização de agendamentos.\n\n## Sobre o curso\n\n- Utilização dos conceitos de Intent e Activity para acessar a câmera nativa do aparelho;\n- Conversão de formatos para a aplicação reconhecer a imagem;\n- Criação e visualização de banco de dados relacionais utilizando SQLite, ADB (Android Debug Bridge) e DB Browser;\n- Leitura de dados para projeção em página com lista de dados;\n- Conversor de cor sobre propriedades de dados.\n- Adicionando permissões no AndroidManifest e foto de aplicativo;\n- Alguns conceitos aprendidos: interfaces entre projetos (com DependencyService, [assembly: Xamarin.Forms.Dependency(typeof(MainActivity))]), PCL (Portable Class Library), utilização de DAO para manutenção de dados e entidades do banco;\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredone06%2Fxamarinapps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredone06%2Fxamarinapps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredone06%2Fxamarinapps/lists"}