Unity for Windows: III–Publishing your unity game to Windows Phone Store
原地址:http://digitalerr0r.wordpress.com/2013/08/27/unity-for-windows-iiipublishing-to-windows-phone-store/
In Part II we covered how you can publish your game to Windows Store, so it runs on Windows 8 driven devices.
Today we are going to export our game to Windows Phone 8, and publish it to the Windows Phone Store, making it available to Windows Phone 8 devices!
Important: This guide is general and can be of help for all Unity games, not just the example here. It’s a living document and will be updated as I learn new stuff.
The Windows Phone Store gives your app a place to live, where millions of users might buy the game you worked hard to create.
Again, you can follow these steps (ish) to publish any game you might have created for Windows Phone using Unity.
I. Handling the Back button
All Windows Phone devices is equipted with a back button:
It’s the tiny arrow on the left side. It is a requirement from the Windows Phone Store that this button is handeled. Luckily, this is very easy to do.
Unity comes with a nice set of tools to handle keyboard input – as you know. The back button on Windows Phone 8 is the same as the Escape key, so to implement logic on your back button, just check if the Escape key was pressed and handle it correctly:
if (Input.GetKeyDown(KeyCode.Escape))
{
HandleBackbutton();
}
Then the body of this function in a level might look like:
void HandleBackbutton()
{
Application.LoadLevel(“MainMenu”);
}
or on the main menu:
void HandleBackbutton()
{
Application.Quit();
}
In your game handler logic for all the various scenes you might have, add this to every scene to make sure the back button is handled correctly!
Simple, right?
II. Setting publishing settings in Unity and exporting
Open the game you want to export (we are using the game from Part I) in Unity, click File->Build Settings.. to open the project settings properties:
Select Windows Phone 8 and click Switch Platform.
Now the main platform for the game is Windows Phone 8, but you can still export to the other platforms as well.
Click Player Settings.. to open the player settings properties:
Set the Orientation to Auto Rotation:
Then select the orientations you want to support:
Click Build from the Build Settings screen and select a folder where to place the solution. I created a folder named WindowsPhone8 in the Unity project folder. Let it build the solution, it might take a few minutes.
Unity will now open the directory where the solution was exported.
To open this, you will need Visual Studio 2012. If you are a student you might can get a licence from www.dreamspark.com, if not, you can download the express version for free here: http://www.microsoft.com/visualstudio/eng/products/visual-studio-express-for-windows-phone
When installed, open the Invad0rs solution. You can see the project is loaded:
Here you can change the splash screen by editing the SplashScreenImage.jpg, and the game tiles (app icons that can be seen on the phone):
Now, test if the application runds by either running it on a Device or in the Simulator (included in Visual Studio 2012).
If you want to run on a device, just connect it to the computer and press play in Visual Studio:
Next, we need to set a few properties for the assembly we will generate. Click PROJECT->Invad0rs properties
In the Application tab, press the Assembly Information button:
Set the language to the main language of the game (must!), and if needed, change the rest of the properties.
Click OK.
Next, we must change the Applications Tiles (the icon/tile the player sees on the phone). Go to the Assets folder of the exported solution (not in the Unity solution) and edit the files you see there (don’t change the resolution):
(Don’t worry about the AlignmentGrid – just leave it)
Also, change the files in the Tiles folder:
III. Adding support for Fast App Resume
To explain this simple, Fast App Resume will resume the game from where it left if you decide to go out of the game (using the Windows button) and then relaunch the game.
Open your solution and right click the WMAppManigest.xaml file and select :
The start of the code looks something like this, and I’m highlighting the line of interest:
<?xml version=”1.0″ encoding=”utf-8″?>
<Deployment xmlns=”http://schemas.microsoft.com/windowsphone/2012/deployment”AppPlatformVersion=”8.0″>
<DefaultLanguage xmlns=”” code=”en-US” />
<App xmlns=”” ProductID=”{8F1EA4A3-0B57-4556-970D-D27298EA5B45}” Title=”SteamLands” RuntimeType=”Silverlight” Version=”1.0.0.0″ Genre=”apps.normal” Author=”Crust Development” Description=”You got lost in the wrong streets of SteamLands. Survive.” Publisher=”Crust Development” PublisherID=”{36e0404a-2921-4b73-8632-3bf364496337}”>
<IconPath IsRelative=”true” IsResource=”false”>Assets\ApplicationIcon.png</IconPath>
<Capabilities>
<Capability Name=”ID_CAP_IDENTITY_DEVICE” />
<Capability Name=”ID_CAP_MEDIALIB_AUDIO” />
<Capability Name=”ID_CAP_MEDIALIB_PLAYBACK” />
<Capability Name=”ID_CAP_NETWORKING” />
<Capability Name=”ID_CAP_SENSORS” />
</Capabilities>
<Tasks>
<DefaultTask Name=”_default” NavigationPage=”MainPage.xaml” />
</Tasks>
<Tokens>
This line is where we will all the Fast App Resume attribute:
ActivationPolicy=”Resume”
Modify the line so it looks like this:
<DefaultTask Name=”_default” NavigationPage=”MainPage.xaml” ActivationPolicy=”Resume”/>
Done – if you run the game on your device, and play for a while, then press the Windows key to do something else or make a call, and then press the app tile again to relaunch the game – it will continue from where you left!
IV. Setting the build to Master
When publishing a Windows Phone 8 game, you need to set the build settings to Master. This is to get rid of the Development Build message in the bottom right side of the app.
V. Testing the solution with the built in Store Test Kit
Before we can send in the app, we need to do a Store Test on the app. Click PROJECT->Open Store Test Kit
Run the automated tests to make sure the first test is passed (the XAP Package Requirements):
Build the solution in Release mode:
You can find the package in the Bin folder of the generated Visual Studio 2012 solution Unity created for us:
VI. Creating you Windows Phone Store developer account
Go to http://dev.windowsphone.com to register your Windows Phone Developer Account.
VII. Submit the Windows Phone 8 game
Submitting the app is simple. Go to http://dev.windowsphone.com and click Dashboard:
Now, click SUBMIT APP:
Follow these steps and upload the XAP file you created earlier at step 2:
After this, click Review and submit to send the app for review. This can take a few days.
If it passes, congratulations! If not, fix the issues and try again, but don’t give up!
Good luck!
5 Responses to Unity for Windows: III–Publishing your unity game to Windows Phone Store
Unity for Windows: III–Publishing your unity game to Windows Phone Store的更多相关文章
- Unity for Windows: II – Publishing Unity games to Windows Store
原地址:http://digitalerr0r.wordpress.com/2013/08/27/unity-for-windows-ii-publishing-to-windows-8/ Windo ...
- 如何实现Windows Phone代码与Unity相互通信(事件方式)
源地址:http://www.cnblogs.com/petto/p/3909063.html 一些废话 昨天写一篇今天写一篇.不是我闲的蛋疼,是今天一天碰到了好几个恼人的问题,浪费一天时间搞定.本文 ...
- 对《[Unity官方实例教程 秘密行动] Unity官方教程《秘密行动》(十二) 角色移动》的一些笔记和个人补充,解决角色在地形上移动时穿透问题。
这里素材全是网上找的. 教程看这里: [Unity官方实例教程 秘密行动] Unity官方教程<秘密行动>(九) 角色初始设定 一.模型设置: 1.首先设置模型的动作无限循环. 不设置的话 ...
- Unity优化之GC——合理优化Unity的GC
转载请标明出处http://www.cnblogs.com/zblade/ 最近有点繁忙,白天干活晚上抽空写点翻译,还要运动,所以翻译工作进行的有点缓慢 =.= PS: 最近重新回来更新了一遍,文 ...
- Unity 3(二):Unity在AOP方面的应用
本文关注以下方面(环境为VS2012..Net Framework 4.5以及Unity 3): AOP简介: Interception using Unity示例 配置文件示例 一.AOP简介 AO ...
- 使用Unity解耦你的系统—PART4——Unity&PIAB
在前面几篇有关Unity学习的文章中,我对Unity的一些常用功能进行介绍,包括:Unity的基本知识.管理对象之间的关系.生命周期.依赖注入等,今天则是要介绍Unity的另外一个重要功能——拦截(I ...
- Unity编程标准导引-3.4 Unity中的对象池
本文为博主原创文章,欢迎转载.请保留博主链接http://blog.csdn.net/andrewfan Unity编程标准导引-3.4 Unity中的对象池 本节通过一个简单的射击子弹的示例来介绍T ...
- Windows Phone Studio-任何人都能开发Windows Phone App的在线工具
在一段时间的内测以后,微软于今天早些时候发布了其Windows Phone应用开发的在线工具,名字叫做Windows Phone Studio.其意义在于,通过简单的内容添加和样式选择,实现Windo ...
- Windows Internals学习笔记(六)Windows关键系统组件
参考资料: 1. <Windows Internals> 2. Dependency Walker 3. Ntoskrnl.exe 4. Livekd的使用 5. WinDbg的使用(一) ...
随机推荐
- 解决关于stack溢出的问题
开发中经常遇到: 前端遇到Uncaught RangeError: Maximum call stack size exceeded错误 后台遇到java.lang.OutOfMemoryError: ...
- 「POI2011 R1」Conspiracy
「POI2011 R1」Conspiracy 解题思路 : 问题转化为,将点集分成两部分,其中一部分恰好组成一个团,其中另一部分恰好组成一个独立集. 观察发现,如果求出了一个解,那么答案最多可以在这个 ...
- hdu 3089 (快速约瑟夫环)
Josephus again Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- [GCJ2017R2]Fresh Chocolate
题目大意: 有n个团和很多盒糖,每个团中人数不一定相同,每盒糖中都有p颗糖. 现在要给每个团发糖,要求每个人都要发到糖,只有一盒糖发完后才能发下一盒糖. 发糖的顺序可以任意安排,问经过合理安排后,最多 ...
- Ubuntu 12.04下Hadoop 2.2.0 集群搭建(原创)
现在大家可以跟我一起来实现Ubuntu 12.04下Hadoop 2.2.0 集群搭建,在这里我使用了两台服务器,一台作为master即namenode主机,另一台作为slave即datanode主机 ...
- VK Cup 2016 - Round 1 (Div. 2 Edition) C. Bear and Forgotten Tree 3 构造
C. Bear and Forgotten Tree 3 题目连接: http://www.codeforces.com/contest/658/problem/C Description A tre ...
- 2015 UESTC 搜索专题A题 王之迷宫 三维bfs
A - 王之迷宫 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/61 Des ...
- PAT甲级1089. Insert or Merge
PAT甲级1089. Insert or Merge 题意: 根据维基百科: 插入排序迭代,消耗一个输入元素每次重复,并增加排序的输出列表.每次迭代,插入排序从输入数据中删除一个元素,在排序列表中找到 ...
- Java---线程多(工作内存)和内存模型(主内存)分析
首先解读Java内存模型(这里区别于JVM的内存模型,堆.栈.工作区) Java 内存模型来屏蔽掉各种硬件和操作系统的内存差异,达到跨平台的内存访问效果.JLS(Java语言规范)定义了一个统一的内存 ...
- js之iframe父、子页面通信
注意事项 一 . 页面加载顺序:一般先加载完父页面才会去加载子页面,所以:必须要确保在iframe加载完成后再进行操作,如果iframe还未加载完成就开始调用里面的方法或变量,会产生错误.判断ifra ...