Andoird开发体验

来源:互联网 发布:网络推手是什么意思 编辑:程序博客网 时间:2024/05/01 21:36

最近对ANDROID系统的开发有了一些兴趣,所以想看看ANDROID的开发跟其它的有什么不同。ANDROID用的是JAVA语言(其实不尽然,语法虽然说跟JAVA非常像,

但还是有一些差异的。不过学起来也还是挺顺手的)。

其实早在半年前也有了解了一下ANDROID的一些机制原理,但是那时候觉得有太多API要去了解了,太烦了,所以研究了一会就没怎么去继续了。

这几天是开始从一些界面的显示上入手的,在界面这一层上,我觉得跟ACTION SCRIPT 3的编程方式非常想象(谁叫它们都是类JAVA的呢),都是一个VIEW表示一个

界面,然后继承一个VIEW之后开始规划自己想到显示的效果,从而来得到一个自己想到的视图界面。

首先,ANDROID的程序是有一个入口点的,跟C++的main函数差不多,不过ANDROID的是一个Activity派生类,这是一个跟用户交互的一个入口,它是继承自

Context的一个类。当系统调用一个应用程序的时候,会从这个派生类开始启动,会调用其onCreate方法,我们一般会在这个onCreate方法里面设置好我们希望显示的

视图。默认创建好一个Project的时候,是会默认写上setContentView这个函数的,这就是对我们这个Activity的视图设置。

接下来是想记录下蓝牙的一些API调用方法了,首先,蓝牙可以用一个BlueToothAdapter类来表示,这个对象是表示本地的一个蓝牙适配器,它的取得是要通过

BluetoothAdapter.getDefaultAdapter()这个方法来获得,假如机器不支持蓝牙功能的话,那么得到的对象将会是NULL。还有一点就是使用蓝牙的时候,要先确定它

是否已经启动了:isEnable这个方法返回的值。

假如蓝牙没有启动,那么我们可以请求用户启动蓝牙,这时候我们希望使用系统默认的一个请求窗口,我们可以写成一个Intent事件,然后调用startActivityForResult

这个方法来请求,startActivityForResult这个方法跟startActivity方法差不多,但是它会返回一个结果,而结果的接受我们需要重载一个回调函数来实现,onActivityResult

这个函数可以实现我们的请求,具体的代码如下:

Intent enablebt = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);

startActivityForResult(enablebt, REQUEST_ENABLE_BT);

BluetoothAdapter.ACTION_REQUEST_ENABLE 这个是系统内设的一个协议。其功能就是调用那个请求打开蓝牙的窗口。

蓝牙适配器打开之后,我们就可以使用它的功能的,首先,我们可以用BluetoothAdapter这个对象来扫描可以连接的其它蓝牙,具体函数是startDiscovery,但是这个

函数是很消耗资源的,而且它的默认只有12秒。当我们扫描到想要连接的蓝牙之后,就调用cancelDiscovery()关闭扫描。

总的来说,蓝牙适配器是可以操作本地的蓝牙,我们可以用它来设置我们蓝牙的名字、控制开关(不过未得到用户允许,不提议这么做)。

原创粉丝点击