第一次开发

第一次的开发

我刚将C语言学完,就开始做黑莓开发了。
黑莓平板电脑是很新的产品,网上也没有其开发的资料,其API完全得自己阅读英文文档。全英文的文档,看起来非常吃力,阅读了一个多月,基本上了解了黑莓程序的基本结构以及黑莓上事件获取与处理的方式。若想要创建一个黑莓的程序,需要建立一个context,其创建的函数为:
#include <screen/screen.h>
int screen_create_context( screen_context_t*pctx, int flags );

参数:

pctx:context指针;

flags:创建类型,包括SCREEN_APPLICATION_CONTEXT、SCREEN_WINDOW_MANAGER_CONTEXT、SCREEN_INPUT_PROVIDER_CONTEXT、SCREEN_POWER_MANAGER_CONTEXT;

返回值:0(窗口创建成功)、-1(窗口创建失败);

需要调用黑莓平板电脑的API的话,还需要调用一个函数来初始化其接口:

#include <sys/platform.h>

#include "bps/event.h"

int bps_initialize(void);

事实上,黑莓没有自己的图形库,在其上实现图形化界面是使用OpenGL图形库,初始化EGL函数的函数为:

#include< bbutil.h>

bbutil_init_egl();

返回值:存在返回值,EXIT_SECCUSS表示失败。

每一个黑莓程序都需要完成如上的过程。写这些像技术类的部分,并不是记录我的技术,而是叙说我的第一个面向对象程序。我所使用的C语言是一个门面向过程的语言,黑莓开发是我第一次接触面向对象,它给了我一个面向对象的概念。我也是第一次做图形界面,并了解一个操作系统的消息获取与处理的方式。

这便是我做第一个黑莓程序的过程,在我完成第一个黑莓程序后,就开始向做其他的图形界面的程序了。

我的第一个黑莓程序是一个迷宫游戏,这个游戏我写了挺久的,第一次做开发嘛。其程序构思如下:

用户用手指在屏幕上滑动,可以将使小球跟着手指滑动,但小球只能在固定的范围内滑动。

在第一张迷宫中,有一定数量的小洞,小球不能调入小洞中,否则游戏重新开始。

在第二章迷宫中,小球不能出界,如果出界,重玩此关卡。而界线便是屏幕边界。

        声明:1.除了系统函数中定义的坐标外以及特别声明外,自定义的坐标原点位于左下角

            一、迷宫图片尺寸为1024*600将之分为102*60个方格子,每个方格子大小为10*10,每个方格子可以有两种状态,即小球可通过(OPEN)和小球不可通过)(CLOSE);特别声明方格子左边原点位于左上角

            二、小球直径设置为30小球每次的位移量为重力感应所反馈的数据决定

            三、最初步骤:第一步、载入开始界面的图片,以及运行开始模块render_begin(),其中也包含在这个界面上的事件处理模块,用game_begin记录游戏的状态,即为是否开启游戏

            第二步、当游戏处于开启状态时,即game_begin值为1时,运行游戏模块render以及该模块的事件处理模块handle_events()

            第三步、在游戏运行界面上,点击“Exit”,退回开始界面,即game_begin = 0

四、导入第二张图片,但是用小方格子法遇到一个没法解决的问题,所以用了另外一个方法记录通道,用函数记录边轨迹的方法(以后成函数法)。

五、程序help:

            点击开始游戏按钮,开始游戏。游戏中,用手指点住小球移动,如果小球出来屏幕,则游戏失败,重来。游戏中,可以点击退出,回到开始界面。点击下一关或者上一关通往上一关或者下一步关。

这就是我第一个自己构思,自己编写的程序。黑莓开发,将我带入了开发的世界,我现在虽然不做黑莓开发而做Linux上的开发,但是黑莓是我第一个做正式的开发平台,永远不会忘,说不定还会回头弄黑莓呢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值