当前位置:  编程技术>移动开发
本页文章导读:
    ▪java定时触发(试一上)        java定时触发(试一下) /*    Timer tt = new Timer();// 定时类         tt.schedule(new TimerTask() {             public void run() {                 System.out.println("我又查询了一边权限。。。"); .........
    ▪ WiEngine Demo简洁解析、资源        WiEngine Demo简要解析、资源 概要: 一直想看看游戏引擎是怎么回事,听说了很多,最终选择了微云的WiEngine作为入手点 相对于其他而言 WiEngine毕竟是中方开发的,一上来就看英文的可能会有.........
    ▪ 在BroadcastReceiver中起步Service或Activity       在BroadcastReceiver中启动Service或Activity import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; public class StartupReceiver extends BroadcastReceiver { @Override public vo.........

[1]java定时触发(试一上)
    来源: 互联网  发布时间: 2014-02-18
java定时触发(试一下)

/*    Timer tt = new Timer();// 定时类
        tt.schedule(new TimerTask() {
            public void run() {
                System.out.println("我又查询了一边权限。。。");
            }
        }, 0, 1000);// 从0秒开始,每隔4秒执行一次
        */


    
[2] WiEngine Demo简洁解析、资源
    来源: 互联网  发布时间: 2014-02-18
WiEngine Demo简要解析、资源

概要:

一直想看看游戏引擎是怎么回事,听说了很多,最终选择了微云的WiEngine作为入手点

相对于其他而言 WiEngine毕竟是中方开发的,一上来就看英文的可能会有些难懂,这也是选择它的一个原因,另外一方面是看到WiEngine提供了相当丰富的DEMO演示,但是这里也要说的是WiEngine的文档真是非常简陋,只是一个类关系图,方法,很多甚至连参数意义和函数作用都没有,这也导致了在看demo代码的过程中,很多问题没法方便的解决。

WiEngine是吸取cocos2d改写的,但是很可惜并不开源,不过这暂时没有大碍,作为看看游戏引擎是怎么回事的我,已经算足够了。同时WiEngine虽说是iOS,android等都支持,但是真正要移植还是需要用C++,NDK去开发,这个暂时也不讨论了。

 

WiEngine中一些比较重要的概念有场景Scene,导演Director,节点Node,层Layer,Sprite精灵,Atlas图片集,Action动作等,这些概念在以前模模糊糊也都听说过

 

Scene场景

一般而言场景Scene指游戏画面,比如菜单界面,读取界面,游戏界面等,并不是代表游戏场景本身,游戏场景本身其实是画布上清空重置,如果不用游戏引擎,场景就类似于我们自己定义的SurfaceView,而通过调用setContentView(SurfaceView)切换场景。WiEngine使用的是GLSurfaceView

 

Director导演

个人感觉是类似于一个游戏总体管理的类,通过它来得到跟画布屏幕的相关参数,与游戏画面渲染动作本身是没有关系的,但是很多东西需要通过它得到。Director是单例模式,在demo中经常可以看到诸如Director.getInstance().xxxx这样的方法,同样的,对场景的置换也是通过它。

 

Node节点

Node是所有元素的基类,游戏中精灵,场景等都是扩展于Node的,在绘制游戏的过程中也是从根部开始,逐个绘制所有节点。可以通过setAnchorPercent设置锚点,以及setPosition设置位置。旋转缩放等是相对于锚点进行的。

 

Layer层

一个场景可以有多个层,也可以一个层都没有,属于Node的子类,可以在层中加入场景。

 

Sprite精灵

精灵这个概念是我在看游戏开发中最先看到的名词,个人理解所有画面中会进行运动的,也就是除了背景这些,所有的都是精灵。而WiEngine说得更直白,精灵其实代表的就是图片资源。

 

Atlas图片集

就是常见的将各个资源图拼接成的大图,一般结合TextureAtlas使用

 

Action动作

动画效果,通过runAction()来启动动作,动作也分很多类型,在demo里都有演示

 

要注意的一点是Android的坐标系原点在屏幕左上,右方向和下方向为正

而OpenG的坐标系原点则在屏幕左下,上方向和有方向为正

WiEngine中提供了诸如convertToGL等方法来进行转换

 

在看demo学习的过程中,做了很多记录,原本想全部写下来,可是demo很多又很难组织,恰巧看到一个博客中有WiEngine的demo学习笔记,所以附上链接,稍显简单,不过自己结合着看的话也差不多够了

http://blog.sina.com.cn/s/blog_670f9b990100xt4v.html Action部分的一些

http://blog.sina.com.cn/s/blog_670f9b990100xt4x.html Box2D部分的一些

http://blog.sina.com.cn/s/blog_670f9b990100xt51.html Lua,Node等的一些

另外其实微云本身也有一些PDF资料,在官网上有下载,但是其中说的也是非常简要,只能作为在接触前了解一下用

 

2/20更新

由于WiEngine对于Box2D的文档实在简陋,很多只是一句简单的英文,连中文都免了,有时会摸不清方向,搜索的过程中发现了一个cocos2d的博客,虽然使用的语言是Objective-C,不过语言大家都是共同的,具体语法可能有些米糊,但是意思肯定是非常明确,这个博客的资料非常好,所以转到这里

http://www.cnblogs.com/andyque/tag/cocos2d/ 强烈推荐


    
[3] 在BroadcastReceiver中起步Service或Activity
    来源: 互联网  发布时间: 2014-02-18
在BroadcastReceiver中启动Service或Activity
import android.content.BroadcastReceiver;  
import android.content.Context;  
import android.content.Intent;  
 
public class StartupReceiver extends BroadcastReceiver  
{  
    @Override  
    public void onReceive(Context context, Intent intent)  
    {  
        //  启动一个Service  
        Intent serviceIntent = new Intent(context, MyService.class);          
        context.startService(serviceIntent);     

        // 启动一个Activity     
        Intent activityIntent = new Intent(context, MessageActivity.class);  
        //  要想在Service中启动Activity,必须设置如下标志  
        activityIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  
        context.startActivity(activityIntent);  
    }  
} 
 

不要忘 了,要在manifest里配置receiver和service


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3