Windows Phone 81的预览版将在近期推送,WP 81的SDK也已经进入到RC阶段,可以从这里安装。本次更新的SDK被直接集成到了VS2013Update2里面,不再是单独的安装包。这就意味着我们要先把Windows从8升级到81,再把VS从2012升级到2013。又是折腾了一个够。可能有人说这个Update2还是RC版,要等到Release放出。我觉得这个安装包就是Release了,要等WP81出来后再改名儿,要不WP81还没出,SDK的Release先放出来了容易让人诟病。这篇文章就来讨论一下那些在WP81SDK中的新特性们。
1、创建应用界面
Universal Apps是一个统一的项目,可以将Windows Store和Windows Phone 81创建在一个项目中,直接用一套Core,两个UI。这绝对是一个非常有用的功能。上面的项目模板中你感觉到陌生的可能是Hub App,其实就是之前的Panorama项目,名字被改成了Hub。这次我们就来创建一个Windows Phone81的项目。而且只能创建WP81的项目,不像VS2012一样可以选择创建71还是80的项目。我想微软可能是出于目前所有80的手机都可以免费升级到81的考虑,不过我想今后的一段时间80的项目还将是主流。
上面这张图就是创建好的项目了。首先你感觉到的也是最大的变化就是所有的命名空间怎么都是Windows Store里的,这就是前面提到的存在Universal App的原因。在WP81的SDK中所有的命名空间简直大换血,完全和Windows Store统一,不再是单独的一套API命名。不光是命名空间,这次变更做的非常之彻底,彻底到连Windows Store中的控件都直接可以再WP中使用,比如,FlipView, GridView, ListView, RichEditBox, PasswordBox, SemanticZoom。
2、应用生命周期
为了尽可能的重用WP中的代码,应用可以在多任务列表里关闭。所以WP的生命周期有了非常大的变化,总共有三种状态Running、Suspended、NotRunning。
你的应用可能从多种途径启动,可能是用户直接启动或者是从tile启动。在进入到Running状态之前应用会进入Activated状态,在这个状态我们可以判断应用的上一个状态,从而判断是否有上次退出之前保存的数据。重写OnLaunched事件,这个事件在每次启动应用的时候被执行。
async protected override void OnLaunched(LaunchActivatedEventArgs args)
{ if (argsPreviousExecutionState == ApplicationExecutionStateTerminated || argsPreviousExecutionState == ApplicationExecutionStateClosedByUser)
{ // TODO: Populate the UI with the previously saved application data
}
else { // TODO: Populate the UI with defaults }
if (WindowCurrentContent == null)
{ WindowCurrentContent = new MainPage(); }
WindowCurrentActivate(); }
PreviousExcutionState代表应用打开之前的状态,ApplicationExcutionState有三种状态,如果是Terminated,代表程序是被系统后台关闭的,那么可能有我们之前保存的数据。ClosedByUser和NotRunning代表应用是被用户关闭或者为启动的状态,要进行一次完整的启动应用。如果用户让应用进入到后台,那么操作系统会给一点时间来相应用户的重新开启应用,如果用户没有立即启动后台的应用那么系统会将应用置成Suspend挂起状态。大部分应用进入后台状态时都会停止运行。
系统会保持尽量多的后台应用挂起,用户一旦启动后台应用,可以得到一个更快的启动速度。然而如果后台挂起的应用过多,那么系统会自动关闭一些应用,而且应用不会收到任何的通知,所以如果后台应用有需要保存的数据,就需要在Suspended状态的时候保存。通过订阅ApplicationCurrentSuspending事件来保存重要数据。在应用进入Suspending状态后的1到10秒钟没有在重新打开应用,系统会认为应用已经停止响应并将其挂起进入Suspened状态。
如果你在在应用挂起时使用异步的方法来保存数据,那么你可以通过GetDeferral方法来推迟挂起事件,直到你的任务完成后再调用SuspendingDeferral的Complete方法来告知系统你的异步任务已经完成,可以进入Suspended状态了。如果一个被挂起的应用被重新唤起,将先触发Resuming事件再触发Activated事件。
3、程序内导航
在WP81中用户可以通过back键来进入Suspended状态而不是直接退出应用。这个功能和以往的WP应用不同,通过注册BackPressed事件。当用户点击back键的时候将触发,通过设置BackPressedEventArgsHandled为true告知系统将应用放到后台设为Suspended状态。如果你的应用在第一页并不能再向后导航,那么你不应该处理这个事件,系统将直接挂起你的应用。在默认的项目模板中默认处理了这个逻辑。
private void HardwareButtons_BackPressed(object sender, BackPressedEventArgs e)
{ Frame frame = WindowCurrentContent as Frame;
if (frame == null)
{ return;
}
if (frameCanGoBack)
{
frameGoBack();
eHandled = true;
} }
4、SD卡读写的支持
在WP8中开发者只能读SD卡上的内容,在WP81中如果应用注册了文件类型处理那么就可以对SD卡进行写的操作。具体可以点击这里查看。
5、数据漫游
在WP81中提供数据漫游的功能,漫游的数据大小限制在100KB。只有在设备处于锁屏状态和系统不繁忙的情况下才会漫游数据。漫游的数据可以在不同版本的应用之间使用,适合在Windows Store和Windows Phone Store之间分享数据。具体的如何实现可以点击这里。
6、后台传输
在WP81中你可以通过WindowsNetworkingBackgroundTransfer实现后台上传或者下载传输,这个过程完全是由系统完成的,即使你的应用在没有打开的情况下。
7、在通知中心管理toast
在WP81中引入了新版的通知中心,开发者可以管理通知中心中的toast。通过WindowsUINotificationsAPI开发者可以对通知中心中的通知进行添加、删除、替换和过期等设置。详细的设置可以点击这里查看。
总结
随着昨晚WP81开发者预览版的推送,正式版估计也不远了。看了What's new in WP81 SDK我倒是觉得对用户来讲新的功能其实不多,但对开发者来说更新的内容很多。将升级到81确实要费一番功夫,不过也方便了以后的Windows8的开发。上面只列出了我觉得有意思的一些features,上面也给出了链接可以看全部的更新。
MIUI适配市面的主流旗舰机型,很多开发团队已将MIUI扩展到更多的手机型号,请先去MIUI官方网站查看适配机型的ROM,如果有使用的机型,可以根据教程来刷机。
安卓SDK安装及配置步骤:
1、下载并按照JDK
2、配置JDK的环境变量
1)右击“我的电脑”,选择“属性”打开。
2)点击“高级系统设置”。
3)在“系统属性”窗口中,选择“高级”属性页中的“环境变量”按钮。
4)在“环境变量”窗口中,选择“系统变量”中变量名为“Path”的环境变量,双击该变量,把JDK安装路径中bin目录的绝对路径(例如:C:\Program Files\Java\jdk170_03\bin)添加到Path变量的值中,并使用英文状态下的半角分号和已有的路径进行分隔。
5)逐一点击“确定”,退出设置。
3、下载Eclipse
进入h t tp://w w weclipseorg/downloads/,选择“Eclipse IDE for Java EE Developers”或“Eclipse IDE for Java Developers”这两个版本之一进行下载
4、安装Eclipse
1)解压下载的Eclipse压缩文件,双击eclipseexe。
2)第一次启动Eclipse,会弹出一个对话框,一般使用Eclipse默认的工作目录即可。
3)安装Android开发工具扩展包(ADT):
a、找到屏幕上方的菜单栏,选择"Help——Install New Software",这时会弹出一个新窗口。
b、选择"Add",在输入框中的"Location"字段中输入网址(URL)"h t tp://dl-sslgooglecom/android/eclipse/sitex m l",按下"ok"按钮后离开。Eclipse会花几分钟的时间来寻找合适版本。
c、选择好后,依次继续,最后点击“Finish”,接着等待下载与安装。
d、当下载安装完成后,会出现重启该软件的窗口,此时点击Restart Now确定即可。
5、下载Android软件开发包(SDK)
重启后,Eclipse会自动让您选择下载Android软件开发包(SDK),选择add all,然后确定下载即可;
6、设置Android SDK环境变量
1)右击“我的电脑”,选择“属性”打开。
2)点击“高级系统设置”。
3)在“系统属性”窗口中,选择“高级”属性页中的“环境变量”按钮。
4)在“环境变量”窗口中,选择“系统变量”中变量名为“Path”的环境变量,双击该变量。
5)把Android SDK安装路径中tools目录的绝对路径(D:\Program Files\Android\android-sdk\tools)添加到Path变量的值中,并使用英文状态下的半角分号和已有的路径进行分隔。
6)逐一点击“确定”,退出设置。
在eclipse菜单栏上打开Windows——Preferences(偏好设置)选项,会弹出一个窗口。在右侧列表中选择“Android”标签(安装好ADT扩展包后,Android标签才会出现在偏好设置页面中),在SDK Location字段按下“Browse”键,选择刚刚解压缩完的android-sdk文件夹所在地(D:\Program Files\Android\android-sdk),然后按下窗口右下角的Apply按钮,接着按下OK按钮。
至此Android开发工具已经全部安装完成。
1)安装Eclipse
到eclipse,地址:http://wwweclipseorg/downloads/downloadphpfile=/technology/epp/downloads/release/helios/SR2/eclipse-java-helios-SR2-win32zip下载"Eclipse IDE for Java Developers (92 MB)",得到eclipse-java-galileo-SR1-win32zip,解压它,比如放在D:\eclipse,运行该文件夹下的"eclipseexe",初次运行要设置一下存放程序的目录,如D:\eclipse_workplace。
3)安装Android SDK
到Android主页,下载,得到一压缩包。解压到某一目录,如D:\android-sdk-windows。然后右键点击"我的电脑","属性"|"高级"|"环境变量",在系统变量的path变量前加上 D:\android-sdk-windows\tools; 新版的SDK还需要手动下载Platform,运行D:\android-sdk-windows下SDK Managerexe。如果它提示https不可用,则必须到settings里把"Force httpshttp:"这一项勾上。然后选择左边"Avaliable Packages",再选择一个SDK Platform,如"SDK Platform Android 231,API 7,revision 1",安装。
4)创建AVD(Android Virtual Device)
AVD就是电脑里虚拟的Android手机。新版SDK需手动添加AVD,进入SDK目录,如D:\android-sdk-windows,运行SDK Managerexe,点击左边栏"Virtual Devices",右边点"New",弹出创建对话框,给这个SVD随便取个Name,比如手机型号Hero,然后设置Target为某个Android版本,SD Card为虚拟的SVD的SD卡容量,再设置分辨率,如320480,然后在Hardware添加这台AVD需要的特殊设备,如键盘KeyBoard等,最后点
下面"Create AVD"完成。
5)安装ADT(Android Development Tools)
不同Eclipse版本对此设置可能不同。运行Eclipse,"Help"|"Install New Software",在Work with处填入"Android - http://dl-sslgooglecom/Android/eclipse/",然后下面会出现"Android DDMS"和"Android Development Tools",勾上,一直next,accept,完成。接着就等它自动下载安装了,这过程很久,如果出现什么是否继续安装对话框,点继续。安装完成后重启Eclipse。
6)设置Android SDK位置
运行Eclipse,菜单栏"Window"|"Preferences",左边栏点击"Android",右边SDK Location填上上面第3)步SDK位置,如D:\android-sdk-windows,点Apply,选择一个Platform,完成。
7)设置Eclipse中ADV
运行Eclipse,菜单栏"Run"|"Run Configurations",选择Android Application,选择一个configuration,右侧选择"Target",再选择一个AVD即可。
8)Hello World
运行Eclipse,菜单栏"File"|"New"|"Project",选择"Android"|"Android Project"如果建立此项目后Eclipse没有列出此项目,这是因为没有设置其显示,在菜单栏"Window"|"Show View"里选择如Package Explorer等。
然后左侧的Package Explorer里右键刚刚建立的项目TestDemo,选择最后一个"Properties",再选择"Run/Debug Settings",在右侧"New"添加"Android JUnit Test"
在弹出的设置里,选择标签"Target",再选择一个AVD,完成。
最后,左侧的Package Explorer里右键点击项目TestDemo,选择"Run As"|"Android Application"。看到一台虚拟的Android手机启动就成功啦。
欢迎分享,转载请注明来源:品搜搜测评网