零.前言 试想一下,我们的应用正在请求一些数据,假设网络不是很好,要花比较长的时间等待,这个时候界面什么反应也没有, 一动不动,用户可能就会认为应用挂掉了,这么久都没反应的,说不定下一分钟用户就把它卸载了. 这样就造成了十分不好的用户的体验.为此,我们可以在这个过程中加上那么点过渡效果,告诉用户正在加载数据. 稍微改善一下用户体验,至少能让用户知道我们的app在干嘛! 本文使用的是自定义ProcessDialog来实现过渡效果,准备了三张图片资源         一.写个自定义的ProcessD…
SignalR 是一个开发实时 Web 应用的 .NET 类库,使用 SignalR 可以很容易的构建基于 ASP.NET 的实时 Web 应用.SignalR 支持多种服务器和客户端,可以 Host 在 7.0  以上的 IIS 服务器,或者通过 Owin Host 在桌面应用和 Windows 服务的进程中:支持的客户端有浏览器.桌面应用.Siliverlight.各种手机等. 本文将会带你做一个 WPF 应用 Host 的 SignalR 服务端,和一个 Xamarin.Android 的…
现在二维码的应用越来越普及,二维码扫描也成为手机应用程序的必备功能了.本文将基于 Xamarin.Android 平台使用 ZXing.Net.Mobile  做一个简单的 Android 条码扫描示例程序. 1.新建一个 Xamarin.Android 应用: 阅读全文…
一.缘起 在自己给别家公司做兼职外包的时候,已经明确知道外包的活不是那么好干的,一般在经历了初期热血澎湃的激情后,逐渐冷淡,愤怒,再冷淡,再愤怒…,听上去好像高潮迭起,但令人尴尬的是,这高潮迭起我们都不想要,以至于最后都想草草结束,一走了之.但当我们把Android移动应用委托第三方开发后,还是未能料到产品会如此粗糙,在不能确定这产品要到何时才能与观众见面时,我们果断终止了恋爱. 于是接下来可选的方案有限,初期采用好评如潮的phonegap开发后,其界面的流畅速度,尤其以下滑滚动速度最让人不能接…
前言 一般来说,一个客户端APP并非独立存在的,很多时候需要与服务器交互.大体可分为两方面的数据,常规字符串数据和文件数据,因为这两种数据很可能传输方式不一样,比如字符串之类的数据,使用HTTP协议,选择json或xml作为数据传输结构,而以json最方便简洁,所以我们近年来的项目,就直接使用json,不再使用xml了.但是作为文件,使用HTTP协议显然不够利索,而直接使用TCP协议是更好的选择.文件传输一般都是在服务端有服务一直在监听相应的端口,客户只需要使用TCP协议,根据服务端制定的规则上…
一.发送通知的机制 在日常的app应用中经常需要使用通知,因为服务.广播后台活动如果有事件需要通知用户,则需要通过通知栏显示,而在Xamarin.Android下的通知需要获取NotificationManager服务,而该服务需要通过GetSystemService获取,同时还要传递一个标识符.获取了通知管理器后我们就可以实例化Notification,然后再由NotificationManager发送出去.这就是整个过程了.下面我们将一一详解通知. 二.前期准备 为了下面的学习和演示我们需要…
一.前言 在手机中进行网络连接不仅是耗时也是耗电的,而耗电却是致命的.所以我们就需要数据库帮助我们存储离线数据,以便在用户未使用网络的情况下也可以能够使用应用的部分功能,而在需要网络连接的功能上采用提示方式,让用户决定是否打开网络.而本节我们将会学习如何访问数据库以及提供基本的增删改查功能,并且使他们尽量的解耦. 二.数据库 Xamarin.Android下创建本地数据库与在Java下的方式相同,而我们必须掌握使用SQLiteOpenHelper,因为这个类会简化我们创建数据的步骤,让我们只需要…
PS:发现文章被其他网站或者博客抓取后发表为原创了,给图片加了个水印 下拉刷新功能在安卓和iOS中非常常见,一般实现这样的功能都是直接使用第三方的库,网上能找到很多这样的开源库.然而在Xamarin. Android中要实现一个好用的下拉刷新功能却不是很容易,在网上找了几个Xamarin.Android的下拉刷新控件,都不是很满意,所以想重新绑定一个java写的下拉刷新控件.在网上找了几个这样的开源库,通过对比发现android-pull-to-refresh实现的功能比较多,实现的效果也比较满…
序言: 在博客园注册了已经有2年多了,快三年了.从开始学习这一行开始就在博客园注册了这个账号.至今也还没有写过一篇随笔,大多时候都是在园子里头潜水,看大牛写的文章,学习. 写博客不为啥,就是自己对自己学习的一个总结.从去年10月份开始学习的xamarin,没有安卓基础,就只有写了2年.net基础.然后就直接开始用于商业项目,就我一个人.我的天呐, 把人给折磨疯了,不过到现在为止呢,已经做完了第一个,开始第二个了. Andriod开发环境配置: 我用的是VS2015 update2版本的,今年Bu…
返回索引目录 原文链接:Location Services. 译文链接:Xamarin.Android平台功能--位置服务 本部分介绍位置服务以及与如何使用位置提供商服务 Location Services 本教程将介绍如何在Android应用中定位,以及如何利用Android Location Service API来获取用户位置,同时还会通过Google Location Services API的位置服务来处理定位. 概述 Android提供多种定位技术接口,如利用蜂窝塔.WiFi和GPS…
原文链接:Hello, Android Multiscreen_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android Multiscreen深入理解. 本部分介绍利用Xamarin.Android处理导航 Hello,Android Multiscreen Deep Dive 在Hello,Android Multiscreen Quickstart中,我们建立并运行了我们第一个多屏Xamarin.Android应用.接下来我们将深入理解Androi…
原文链接:Hello, Android Multiscreen Quickstart. 译文链接:Hello,Android Multiscreen快速上手 本部分介绍利用Xamarin.Android处理导航 Hello, Android Multiscreen Quickstart 在指南的第一部分,我们将为Phoneword添加第二个屏幕 -- 关于电话历史的跟踪情况.最终的应用会有第二个屏幕来展示拨打历史.最终界面如下: 下面开始练习. 系统及环境要求 由于本教程将在Hello,Andr…
返回索引目录 原文链接:Hello, Android_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android深入理解 本部分介绍利用Xamarin开发Android应用程序 Hello, Android Deep Dive 在Hello, Android Quickstart(原文,译文)中,我们创建并运行了我们第一个Xamarin.Android应用程序.现在我们对Android应用如何工作进行进一步学习了解,以便于我们开发更加复杂的程序. 在本指南…
返回索引目录 原文链接:Hello, Android_Quickstart. 译文链接:Xamarin.Android开发入门--Hello,Android快速上手 本部分介绍利用Xamarin开发Android应用程序 Hello, Android Quickstart 在指南的第一部分,我们创建一个打电话的应用,基础功能为:将输入含有字母和数字的电话号码转化为纯数字号码,然后拨打此号码.最终界面如下: 下面开始练习. 系统及环境要求 Xamarin.Android需要以下任一环境 系统:OS…
0x01 前言 对于现在大部分的APP,第一次打开刚安装或更新安装的APP都会有几个引导界面,通常这几个引导页是告诉用户 APP有些什么功能或者修改了什么bug.新增了什么功能等等等. 下面就用Xamarin.Android来简单实现一下.主要用到的是ViewPager,当然也就离不开Xamarin.Android.Support.v4 如果遇到不能编译的问题,可以参考Xamarin.Android之简单的抽屉布局的出错处理方案. 0x02 页面布局编写 新建一个Android项目 添加几个简单…
0x01 前言 相信对于用过Android版QQ的,应该都不会陌生它那个向右滑动的菜单(虽说我用的是Lumia) 今天就用Xamarin.Android实现个比较简单的抽屉布局.下面直接进正题. 0x02 做个简单的抽屉布局 新建个android项目 通过NuGet安装个Xamarin.Android.Support.v4 其实呢,官网那里还用很多组件可用拿来尝试一下的. https://components.xamarin.com/ 然后修改Main.axml <?xml version=&quo…
0x01 前言 前面一篇,Xamarin.Android和UWP之MVVM的简单使用(一),主要讲了MvvmLight的简单使用 这篇主要讲讲MvvmCross的简单使用,例子的话,还是和上篇的一样.直接进正题吧,不废话了. 0x02 简单的MVVM(mvvmcross) Demo 新建一个类库项目:Catcher.MVVMDemo.Day01CrossCore 添加一个ViewModels文件夹,同时添加一个MainViewModel using MvvmCross.Core.ViewMode…
0x01 前言 就目前而言,MVVM可以说是挺流行的,无论是web端还是移动端,web端的主要代表angularjs,avalonjs等, 移动端(xamarin,uwp)的代表应该是mvvmlight,mvvmcross等, 我们的主题是移动端,所以主要讲mvvmlight,mvvmcross,这篇主要讲MvvmLight,下篇讲MvvmCross. 还是以Demo的形式来谈使用. 0x02 简单的MVVM(mvvmlight) Demo 先来个web版最简单的MVVM效果,然后在按xamar…
对现在的APP软件来说,基本上都会有一个Splash页面,类似大家常说的欢迎页面.启动界面之类的. 正常来说这个页面都会有一些相关的信息,比如一些理念,Logo,版本信息等 下面就来看看在Xamarin.Android是如何简单实现的吧. 一.新建一个空白Android项目 二.添加一个layout,splash.axml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:andr…
一.前言 看到有人问关于xamarin.android的布局没智能提示问题(VS 2015),当然,写布局这东西没提示这是一件相对痛苦的事 ,所以这里就提供一个解决的方案! 二.解决方案 想要智能提示,肯定也是要有相应的文件的!!! 第一步.把这两个文件放在  VS安装目录\Xml\Schemas   这个文件夹下面 第二步.在VS中把这两个用起来 打开工具栏的XML->Schemas 通过添加按钮把那两个文件添加进去(按理说,只需要添加那个layout-xml.xsd的) 新建一个layout…
一.前言 回忆到上篇 <Xamarin.Android再体验之简单的登录Demo> 做登录时,用的是GET的请求,还用的是同步, 于是现在将其简单的改写,做了个简单的封装,包含基于HttpClient和HttpWebRequest两种方式的封装. 由于对这一块还不是很熟悉,所以可能不是很严谨. 二.先上封装好的代码 using System; using System.Collections.Generic; using System.IO; using System.Json; using…
这些天做了一个基于 VSTS 的 Xamarin.Android的持续集成,这里分享下 Build Agent 环境需求 DotNetFramework msbuild visualstudio AndroidSDK JDK Xamarin.Android Build的部分分为以下步骤: 1. 还原NuGet包 a. 这步之所以存在,原因为我使用了Xamarin.Android进行编译,而没有直接对解决方案使用MSBUILD进行编译,所以需要单独还原一下NuGet包 b. 解决方案路径填写 **…
Xamarin Android项目在编译时会从google的服务器下载缺失的m2repository相关文件,虽然不明白这是干什么的,但是情况就是Andorid SDK Manager不会去下载这个东西,然后在VS里编译某些项目时会去下载某些版本的m2repository文件. 由于墙的关系这个肯定是下载不下来的,所以只能通过迅雷穿墙下载,然后拷贝到指定的目录,这个目录就是它报错的提示里的一个文件夹,路径类似于:C:\Users\Administrator\AppData\Local\Xamar…
0.要绑定的jar库,需要保证编译jar使用的jdk版本,与绑定时xamarin使用的jdk版本一致. 查看编译jar的jdk版本的方法:jar解压后,a.看MANIFEST.MF  b. javap -verbose xxx.class 1.编译时输出警告信息,如: 1>JARTOXML : warning J2XA006: missing class error was raised while reflecting com.tencent.connect.UserInfo : androi…
一.入门(已完成) 1.学习Xamarin Android项目的基本结构 2.学习界面布局的基本方式 3.学习基本编码规则 4.学习页面跳转和传值 5.学习对话框和提示信息显示方法 6.学习使用系统剪贴板 7.学习使用系统接口选择照片或文件 8.学习使用系统接口分享数据或链接 9.学习扫描和识别图像二维码 二.调用本机数据库 三.与服务器交互 四.推送信息 五.调用GPS和蓝牙等…
时间过得真快,距离上次发随笔又是一年多.作为上次发的我的第一个WP8.1应用总结的后继,这次同样的主要功能,改为实现安卓版APP.前几个月巨硬收购Xamarin,把Xamarin集成到VS里了,大大方便了我广大.net码农.由于年初脱了WP的坑,换了个安卓低端机,想着什么时候装Xamarin开发个App玩玩. 上个月笔记本100G的C盘莫名其妙快满了,趁着重装系统的机会,安装了VS2015 with sp3,下载开发Android App需要的各种东东.这里要感谢[C#]VS2015开发环境的安…
欢迎大家加入以下开源社区 Xamarin-Cn:https://github.com/Xamarin-Cn Mvvmcross-Cn:https://github.com/Mvvmcross-Cn  (另外微信订阅号 Xamarin 所有者@善友兄也给予了运营权限,后面将开始陆续运营起来,给大家推送相关的文章) 简介 相信做了开发有一定经验的人都知道IOC的存在,而Xamarin.Android中还没有IOC的存在.特别是在Xamarin.Android下,如果仅仅只是显示简单的数据,就需要通过…
上次使用Xamarin.Android实现了一个比较常用的功能PullToRefresh,详情见:Xamarin. Android实现下拉刷新功能 这次将实现另外一个手机App中比较常用的功能:侧滑菜单.通过搜索,发现有很多侧滑菜单,有仿手机QQ的侧滑菜单,有折叠的侧滑菜单,有SlidingMenu等,不过我还是比较喜欢 ResideMenu实现的效果,所以想通过Xamarin.Android的绑定实现该效果.这次实现该菜单遇到的问题比较多,花的时间也较多,花了三四个晚上才解决所有的问题.下面是…
使用Xamarin.Android时,会用到各种第三方库,而这些库基本上是java编写的,要在Xamarin.Android中使用这些库,就需要通过Android Binding Project绑定对应的java库,然后在C#中使用.绑定时,可能需要编写相关的转换规则或者修改对应的java源代码,遇到问题时,可以到Xamarin的官网查看,也可以Google. Xamarin.Android绑定参考文档地址: http://developer.xamarin.com/guides/android…
我原来一直用的是老版本的 Xamarin , android_m2repository_rxx.zip 早已在 C:\Users\XXX\AppData\Local\Xamarin\Android.Support.Design\XXX 中存在,所以更新最新的 Xamarin 后, 这一块都是没有任何问题的. 有园友反映这个 zip 明明已经放到了指定的文件夹中,但是还是会反复的 Please download XXXX. 1>C:\Program Files (x86)\MSBuild\Xama…