A. android_studio手机蓝牙串口通信源代码
初涉android的蓝牙操作,按照固定MAC地址连接获取Device时,程序始终是异常终止,查了好多天代码都没查出原因。今天改了一下API版本,突然就成功连接了。总结之后发现果然是个坑爹之极的错误。
为了这种错误拼命查原因浪费大把时间是非常不值得的,但是问题不解决更是揪心。可惜我网络了那么多,都没有给出确切原因。今天特此mark,希望后来者遇到这个问题的时候能轻松解决。
下面是我的连接过程,中间崩溃原因及解决办法。
1:用AT指令获得蓝牙串口的MAC地址,地址是简写的,按照常理猜测可得标准格式。
2:开一个String adress= "************" //MAC地址, String MY_UUID= "************"//UUID根据通信而定,网上都有。
3:取得本地Adapter用getDefaultAdapter(); 远程的则用getRemoteDevice(adress); 之后便可用UUID开socket进行通信。
如果中途各种在getRemoteDevice处崩溃,大家可以查看一下当前的API版本,如果是2.1或以下版本的话,便能确定是API版本问题,只要换成2.2或者以上就都可以正常运行了~ 这么坑爹的错误的确很为难初学者。 唉·········· 为这种小trick浪费很多时间真是难过。
(另外有个重要地方,别忘了给manifest里面加以下两个蓝牙操作权限哦~)
<uses-permissionandroid:name="android.permission.BLUETOOTH"></uses-permission>
<uses-permissionandroid:name="android.permission.BLUETOOTH_ADMIN"></uses-permission>
下面附上Android蓝牙操作中用固定MAC地址传输信息的模板,通用搜索模式日后再补删模板:
=null;
=null;
privateOutputStreamoutStream=null;
privateInputStreaminStream=null;
privatestaticfinalUUIDMY_UUID=UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");//这条是蓝牙串口通用的UUID,不要更改
privatestaticStringaddress="00:12:02:22:06:61";//<==要连接的蓝牙设备MAC地址
/*获得通信线路过程*/
/*1:获取本地BlueToothAdapter*/
mBluetoothAdapter=BluetoothAdapter.getDefaultAdapter();
if(mBluetoothAdapter==null)
{
Toast.makeText(this,"Bluetoothisnotavailable.",Toast.LENGTH_LONG).show();
finish();
return;
}
if(!mBluetoothAdapter.isEnabled())
{
Toast.makeText(this,"-runthisprogram.",Toast.LENGTH_LONG).show();
finish();
return;
}
/*2:获取远程BlueToothDevice*/
BluetoothDevicedevice=mBluetoothAdapter.getRemoteDevice(address);
if(mBluetoothAdapter==null)
{
Toast.makeText(this,"Can'tgetremotedevice.",Toast.LENGTH_LONG).show();
finish();
return;
}
/*3:获得Socket*/
try{
btSocket=device.(MY_UUID);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Socketcreationfailed.",e);
}
/*4:取消discovered节省资源*/
mBluetoothAdapter.cancelDiscovery();
/*5:连接*/
try{
btSocket.connect();
Log.e(TAG,"ONRESUME:BTconnectionestablished,datatransferlinkopen.");
}catch(IOExceptione){
try{
btSocket.close();
}catch(IOExceptione2){
Log.e(TAG,"ONRESUME:",e2);
}
}
/*此时可以通信了,放在任意函数中*/
/*try{
outStream=btSocket.getOutputStream();
inStream=btSocket.getInputStream();//可在TextView里显示
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Outputstreamcreationfailed.",e);
}
Stringmessage="1";
byte[]msgBuffer=message.getBytes();
try{
outStream.write(msgBuffer);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Exceptionringwrite.",e);
}
*/
通用搜索模式代码模板:
简洁简洁方式1 demo
作用: 用VerticalSeekBar控制一个 LED屏幕的亮暗。
直接上码咯~
packagecom.example.seed2;
importandroid.app.Activity;
importandroid.app.AlertDialog;
importandroid.app.Dialog;
importandroid.os.Bundle;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.OutputStream;
importjava.util.UUID;
importandroid.bluetooth.BluetoothAdapter;
importandroid.bluetooth.BluetoothDevice;
importandroid.bluetooth.BluetoothSocket;
importandroid.content.DialogInterface;
importandroid.util.Log;
importandroid.view.KeyEvent;
importandroid.widget.Toast;
{
privatestaticfinalStringTAG="BluetoothTest";
=null;
=null;
privateOutputStreamoutStream=null;
privateInputStreaminStream=null;
privateVerticalSeekBarvskb=null;
privatestaticfinalUUIDMY_UUID=UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");//这条是蓝牙串口通用的UUID,不要更改
privatestaticStringaddress="00:12:02:22:06:61";//<==要连接的蓝牙设备MAC地址
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.vskb=(VerticalSeekBar)super.findViewById(R.id.mskb);
this.vskb.setOnSeekBarChangeListener(newOnSeekBarChangeListenerX());
mBluetoothAdapter=BluetoothAdapter.getDefaultAdapter();
if(mBluetoothAdapter==null)
{
Toast.makeText(this,"Bluetoothisnotavailable.",Toast.LENGTH_LONG).show();
finish();
return;
}
if(!mBluetoothAdapter.isEnabled())
{
Toast.makeText(this,"-runthisprogram.",Toast.LENGTH_LONG).show();
finish();
return;
}
}
.OnSeekBarChangeListener{
publicvoidonProgressChanged(VerticalSeekBarseekBar,intprogress,booleanfromUser){
//Main.this.clue.setText(seekBar.getProgress());
/*Stringmessage;
byte[]msgBuffer;
try{
outStream=btSocket.getOutputStream();
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:OutputStreamcreationfailed.",e);
}
message=Integer.toString(seekBar.getProgress());
msgBuffer=message.getBytes();
try{
outStream.write(msgBuffer);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Exceptionringwrite.",e);
}*/
}
(VerticalSeekBarseekBar){
Stringmessage;
byte[]msgBuffer;
try{
outStream=btSocket.getOutputStream();
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:OutputStreamcreationfailed.",e);
}
message=Integer.toString(seekBar.getProgress());
msgBuffer=message.getBytes();
try{
outStream.write(msgBuffer);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Exceptionringwrite.",e);
}
}
publicvoidonStopTrackingTouch(VerticalSeekBarseekBar){
Stringmessage;
byte[]msgBuffer;
try{
outStream=btSocket.getOutputStream();
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:OutputStreamcreationfailed.",e);
}
message=Integer.toString(seekBar.getProgress());
msgBuffer=message.getBytes();
try{
outStream.write(msgBuffer);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Exceptionringwrite.",e);
}
}
}
@Override
publicvoidonStart()
{
super.onStart();
}
@Override
publicvoidonResume()
{
super.onResume();
BluetoothDevicedevice=mBluetoothAdapter.getRemoteDevice(address);
try{
btSocket=device.(MY_UUID);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Socketcreationfailed.",e);
}
mBluetoothAdapter.cancelDiscovery();
try{
btSocket.connect();
Log.e(TAG,"ONRESUME:BTconnectionestablished,datatransferlinkopen.");
}catch(IOExceptione){
try{
btSocket.close();
}catch(IOExceptione2){
Log.e(TAG,"ONRESUME:",e2);
}
}
//.
/*try{
outStream=btSocket.getOutputStream();
inStream=btSocket.getInputStream();
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Outputstreamcreationfailed.",e);
}
Stringmessage="read";
byte[]msgBuffer=message.getBytes();
try{
outStream.write(msgBuffer);
}catch(IOExceptione){
Log.e(TAG,"ONRESUME:Exceptionringwrite.",e);
}
intret=-1;
while(ret!=-1)
{
try{
ret=inStream.read();
}catch(IOExceptione)
{
e.printStackTrace();
}
}
*/
}
@Override
B. 谁能给一份开发基于蓝牙4.0的android的demo源码
请参考如下WIKI页面,基本上目前有提供的BLE的参考代码都集中到这个页面了:http://processors.wiki.ti.com/index.php/Category:BluetoothLE
C. 关于android蓝牙客户端通讯开发,有没有好用的第三方库
Symbian OS(塞班) Symbian OS(中文译音“塞班系统”)由诺基亚、索尼爱立信、摩托罗拉、西门子等几家大型移动通讯设备商共同出资组建的一个合资公司,专门研发手机操作系统。而Symbian操作系统的前身是EPOC,而EPOC是 Electronic Piece ofCheese取第一个字母而来的,其原意为"使用电子产品时可以像吃奶酪一样简单",这就是它在设计时所坚持的理念。 Symbian操作系统在智能移动终端上拥有强大的应用程序以及通信能力,这都要归功于它有一个非常健全的核心-强大的对象导向系统、企业用标准通信传输协议以及完美的sun java语言。Symbian认为无线通讯装置除了要提供声音沟通的功能外,同时也应具有其它种沟通方式,如触笔、键盘等。在硬件设计上,它可以提供许多不同风格的外型,像使用真实或虚拟的键盘,在软件功能上可以容纳许多功能,包括和他人互相分享信息、浏览网页、传输、接收电子信件、传真以及个人生活行程管理等。此外,Symbian操作系统在扩展性方面为制造商预留了多种接口,而且EPOC 操作系统还可以细分成三种类型:Pearl/Quartz/Crystal,分别对应普通手机、智能手机、Hand Held PC场合的应用。 优点:多年来Symbian系统一直占据智能系统的市场霸主地位,系统能力和易用性等各方面很强! 缺点:一般配置的机型反映较慢,对主流的媒体格式的支持性较差,不同版本的软件兼容性不好,且证书问题也很头痛。 Windows Mobile 微软推出的Windows Mobile操作系统最初被视作是与Palm OS竞争的产品,然而时至今日,Windows Mobile的应用已经超过Palm,开始显露出掌上设备王者的风范。去年发布的V5.0做出了很多实用的改进,包括更加智能化的Word和Excel版本、直接邮件技术和持久的数据存储。 Windows Mobile是 Microsoft 用于 Pocket PC 和 Smartphone 的软件平台。Windows Mobile 将熟悉的 Windows 桌面扩展到了个人设备中。 Windows Mobile是微软为手持设备推出的“移动版Windows”,使用WindowsMobile操作系统的设备主要有手机、PDA、随身音乐播放器等。Windows Mobile操作系统有三种,分别是WindowsMobile Standard、Windows MobileProfessional,Windows Mobile Classic。目前最新的版本是Windows Mobile 6.1,6.5版本即将公布。 Windows Mobile掌上电脑和手机的主流硬件配置:CPU: 195-624 Mhz, 主要芯片厂商:Intel,Texas Instruments, Samsung, Qualcomm等,内存:64-128MB Ram (用于程序运行),128-256MBRom (用于第三方程序及用户文件储存),显示屏:240x320或480x640,6.5万色,2.4-3.5英寸,扩充卡:Micro SD或SD,SDHC,高端机型内置WiFi无线网络接收模块,GPS卫星接收模块,FM收音机接收模块,3G或3.5G高速网络,另配有蓝牙及用于和电脑同步用的USB接口。 优点:界面和操作都和电脑上的Windows十分接近,对于机友来说十分熟悉又上手;各种保存在电脑或手机里的信息、资料可以轻松实现共享;有大量的应用软件可供用户选择 缺点:占用系统资源高、容易系统崩溃、机型价格相对较高。。。 Linux 目前采用Linux操作系统的手机越来越多,不过几乎每一部手机的操作系统都是厂家自己开发的,Linux并没有一个统一的平台。不过值得注意的是,近期有厂商推出了GreenPhone的概念,也就是提供一个统一的Linux软件平台,然后再由手机制造商添加具体的特性,这已经较接近完整的手机操作系统。 目前Linux发展的最大阻力在于它对硬件要求比较高,而且没有一个强有力的推广方。这样就导致Linux手机的成本并不便宜,而且版本混乱。但Linux的优势也相当明显,首先它是免费的,不需要缴纳任何专利费,这对于大多数手机制造商都是极大的诱惑;其次它是开源的,每一家愿意的厂商都能够加入到Linux操作系统的底层开发中。 关于Linux的前景,我们只能预测短期。现在其他操作系统已经相当完善,而Linux还远远谈不上成熟,所以在短期内Linux不会获得大规模应用,但采用Linux的手机应该会接连不断地出现在市场上,并且受到一定的欢迎。 优点:具有自由、免费、开放源代码的优势,可以由用户自主研究代码,自定义多数系统的内容 缺点:Linux操作系统的机型来自官方的第三方软件很少,需要用户自行刷机后才能安装更多的程序,操作起来有些门槛。 Palm OS Palm OS是Palm公司开发的专用于PDA上的一种操作系统,这是PDA上的霸主,一度普占据了90%的PDA市场的份额。虽然其并不专门针对于手机设计,但是Palm OS的优秀性和对移动设备的支持同样使其能够成为一个优秀的手机操作系统。其最新的版本为Palm OS 5.2。目前具有手机功能的Palm PDA如Palm公司的Tungsten W。而Handspring公司(目前已被Palm公司收购)的Treo系列则是专门使用Palm OS的手机,如Treo 270以及最新的倍受瞩目的Treo 650。 四年前掌上电脑操作系统的霸主是Palm,那时的中高端PDA清一色都是Palm和索尼的产品,而且几乎都是境外带回来的水货。不过如今Palm操作系统如今已经风光不再,当年索尼宣布退出国际PDA市场(实际上等于宣布停止生产Palm操作系统的PDA,因为索尼的全部PDA都采用Palm系统),对于 Palm来说不亚于一场雪崩,而且事实上索尼的退出也确实成为Palm由盛转衰的分水岭,此后Palm的市场分额逐渐被Windows Mobile所蚕食。 优点:Palm OS系统运行占用资源少,处理速度快,且简单易用 缺点:功能单一,用户群少,支持中文的操作平台开发慢啊慢 Mac OS X (苹果iphone的系统) Mac OS X 是苹果麦金塔电脑之操作系统软件的 Mac OS最新版本。Mac OS X 于 2001年 首次在商场上推出。它包含两个主要的部份:Darwin,是以 BSD 原始码和 Mach 微核心为基础,类似 Unix 的开放原始码环境,由苹果电脑采用和与独立开发者协同作进一步的开发;及一个由苹果电脑开发,命名为 Aqua 之有版权的 GUI。 Mac OS X Server 亦同时于2001年发售. 架构上来说与工作站(客户端)版本相同,只有在包含的工作群组管理和管理软件工具上有所差异,提供对于关键网络服务的简化存取,像是邮件传输服务器, samba 软件,LDAP 目录服务器,以及名称服务器(DNS)。同时它也有不同的授权型态。 优点:全触摸设计,真的是一次手机革命,娱乐性能强,第三方软件多 缺点:系统封闭,功能不是太全面 Google Android HTC G1操作界面Android 是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序 ——移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,我们希望借助建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。我们认为此举必将推进更好、更快的创新,为移动用户提供不可预知的应用和服务。 android一词的本义指“机器人”,当时同时Android也是Google于07年11月5日宣布的基于Linux平台开源手机操作系统名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。 2008年9月22日,美国运营商T-Mobile USA在纽约正式发布第一款Google手机——T-Mobile G1。该款手机为宏达电制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持 Wi-Fi。 优点:具备触摸屏、高级图形显示和上网功能,界面强大,可以说是一种融入全部Web应用的单一平台 缺点:采用该系统的机型少,上手有点难度 BlackBerry(黑莓) “黑莓”BlackBerry是美国市场占有率第一的智能手机,这得益于它的制造商RIM(Research in Motion)较早地进入移动市场并且开发出适应美国市场的邮件系统。大家都知道BlackBerry的经典设计就是宽大的屏幕和便于输入的QWERTY 键盘,所以BlackBerry一直是移动电邮的巨无霸。正因为是正统的商务机,所以它在多媒体播放方面的功能非常孱弱,也许它在未来应该着力改善这个弱点,因为手机功能的整合是大势所趋,人们不会只满足于单一的功能。 BlackBerry开始于1998年,RIM的品牌战略顾问认为,无线电子邮件接收器挤在一起的小小的标准英文黑色键盘,看起来像是草莓表面的一粒粒种子,就起了这么一个有趣的名字。应该说,Blackberry与桌面PC 同步堪称完美,它可以自动把你Outlook邮件转寄到Blackberry中,不过在你用Blackberry发邮件时,它会自动在邮件结尾加上“此邮件由Blackberry发出”字样。 BlackBerry在美国之外的影响微乎其微,我国最近已经在广州开始与RIM合作进行移动电邮的推广试验,不过目前看来收效甚微。大家都知道,我国对于电子邮件的依赖并不像美国人那么强,他们在电子邮件里讨论工作、安排日程,而我们则更倾向于当面交谈。可以说BlackBerry在中国的影响几乎为零,除了它那经典的外形。 优点:Blackberry与桌面PC 同步堪称完美,大家都知道BlackBerry的经典设计就是宽大的屏幕和便于输入的QWERTY键盘,所以BlackBerry一直是移动电邮的巨无霸。 缺点:在多媒体播放方面的功能非常孱弱。 麻烦采纳,谢谢!
D. 基于android studio3.0编写的蓝牙串口
ndroid是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。Android操作系统最初由Andy Rubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 2013年的第四季度,Android平台手机的全球市场份额已经达到78.1%。[1]2013年09月24日谷歌开发的操作系统Android在迎来了5岁生日,全世界采用这款系统的设备数量已经达到10亿台。
E. iOS开发 同一个蓝牙设备,为什么android发现的服务比iOS多
因为安卓系统的开放程度比苹果手机系统要高,所以它的功能相应的也会多一些,这个并不奇怪。
F. android bluedroid什么意思
android bluedroid什么意思写回答
android bluedroid什么意思
写回答有奖励 共1个回答
1条回答
心爱浅紫色
2016-06-21 TA获得超过6040个赞
关注
Android 4.2之前,Google一直使用的是Linux官方蓝牙协议栈BlueZ。BlueZ实际上是由高通公司在2001年5月基于GPL协议发布的一个开源项目,做为Linux 2.4.6内核的官方蓝牙协议栈。随着Android设备的流行,BlueZ也得到了极大的完善和扩展。例如Android 4.1中BlueZ的版本升级为4.93,它支持蓝牙核心规范4.0,并实现了绝大部分的Profiles。
从Android 4.2开始,Google便在Android源码中推出了它和博通公司一起开发的BlueDroid以替代BlueZ。BlueZ的创始者,高通公司也将在基于其芯片的Android参考设计中去除BlueZ,支持BlueDroid。
相比BlueZ,BlueDroid最值得称道的地方就是其框架结构变得更为简洁和清晰。对我们工程师来说这也是个不错的福利,清晰、简洁的架构使我们在debug过程中思路更清晰;
G. 安卓开源Android_permission访问权限
android.permission.ACCESS_NETWORK_STATE允许程序访问有关GSM网络信息(Allowsapplications to access information about networks)
android.permission.ACCESS_WIFI_STATE允许程序访问Wi-Fi网络状态信息(Allowsapplications to access information about Wi-Fi networks)
android.permission.BLUETOOTH允许程序连接到已配对的蓝牙设备(Allowsapplications to connect to paired bluetooth devices)
android.permission.BLUETOOTH_ADMIN允许程序发现和配对蓝牙设备(Allowsapplicationsto discover and pair bluetooth devices)
android.permission.CHANGE_WIFI_STATE允许程序改变Wi-Fi连接状态(Allowsapplications to change Wi-Fi connectivity state)
android.permission.DEVICE_POWER允许访问底层电源管理(Allowslow-level access to power management)
android.permission.DISABLE_KEYGUARD允许程序禁用键盘锁(Allowsapplications to disable the keyguard )
android.permission.EXPAND_STATUS_BAR允许一个程序扩展收缩在状态栏,Android开发网提示应该是一个类似WindowsMobile中的托盘程序(Allows an application to expand or collapse the status bar.)
android.permission.GET_DETAILED_TASKS 检索正在运行的应用的详细信息,恶意程序可借此获得其他应用的私密信息
android.permission.GET_TASKS 检索正在运行的应用,可用于了解当前设备上使用了哪些应用
android.permission.INJECT_EVENTS 将自身的输入事件(例如按键)提供给其他应用,恶意程序可坚持控制手机
android.permission.INTERNAL_SYSTEM_WINDOW 允许创建未授权的内部系统窗口,普通应用绝不应该使用此权限
android.permission.MANAGE_APP_TOKENS 创建和管理令牌,普通应用绝不应该使用此权限
android.permission.MASTER_CLEAR 恢复出厂设置
android.permission.MANAGE_NETWORK_POLICY
android.permission.MANAGE_USB
android.permission.MOUNT_UNMOUNT_FILESYSTEMS允许挂载和反挂载文件系统可移动存储(Allowsmounting and unmounting file systems for removable storage. )
android.permission.RECEIVE_BOOT_COMPLETED允许一个程序接收到 ACTION_BOOT_COMPLETED广播在系统完成启动(Allowsan application to receive the ACTION_BOOT_COMPLETED that is broadcast after thesystem finishes booting. )
android.permission.REORDER_TASKS允许程序改变Z轴排列任务(Allowsan application to change the Z-order of tasks)
android.permission.READ_PHONE_STATE 读取手机的状态和身份,可以确定手机的号码/序列号/是否处于通话状态/被叫号码
android.permission.READ_FRAME_BUFFER 读取帧缓冲区的内容
android.permission.REMOVE_TASKS 停止正在运行的进程,恶意程序可以借此停止其他程序的运行
android.permission.READ_EXTERNAL_STORAGE
android.permission.REMOTE_AUDIO_PLAYBACK
android.permission.START_ANY_ACTIVITY 允许应用启动任何活动(不考虑权限保护和导出状态)
android.permission.SYSTEM_ALERT_WINDOW 在其他应用之上或用户界面的特定部分绘图,可能会干扰对用户界面的使用,或者使其他应用中看到的内容发生变化
android.permission.SET_ORIENTATION允许底层访问设置屏幕方向和实际旋转(Allowslow-level access to setting the orientation (actually rotation) of the screen.)
android.permission.STATUS_BAR允许程序打开、关闭或禁用状态栏及图标Allows an application to open, close, or disable the statusbar and its icons.
android.permission.SET_SCREEN_COMPATIBILITY 允许控制其他应用的屏幕兼容模式,恶意程序可以借此影响其他应用的行为
android.permission.START_ANY_ACTIVITY 允许应用启动任何活动(不考虑权限保护和导出状态)
android.permission.STOP_APP_SWITCHES让应用程序始终运行
android.permission.STATUS_BAR_SEBVICE
android.permission.SHELL
android.permission.UPDATE_DEVICE_STATS 允许应用修改电池的统计信息,普通应用绝不应该使用此权限
android.permission. VIBRATE控制振动器
android.permission.WRITE_EXTERNAL_STORAGE 允许写入或删除SD卡
android.permission.WRITE_SETTINGS 修改系统设置,恶意程序可以借此破坏系统
android.permission.WAKE_LOCK 阻止手机进入休眠状态
H. bluedroid是什么蓝牙适配器吗
是一个蓝牙版块,bluedroid是在安卓上替代bluez的一个蓝牙协议栈。
Android 4.2之前,Google一直使用的是Linux官方蓝牙协议栈BlueZ。BlueZ实际上是由高通公司在2001年5月基于GPL协议发布的一个开源项目,做为Linux 2.4.6内核的官方蓝牙协议栈。
随着Android设备的流行,BlueZ也得到了极大的完善和扩展。例如Android 4.1中BlueZ的版本升级为4.93,它支持蓝牙核心规范4.0,并实现了绝大部分的Profiles。
从Android 4.2开始,Google便在Android源码中推出了它和博通公司一起开发的BlueDroid以替代BlueZ。BlueZ的创始者,高通公司也将在基于其芯片的Android参考设计中去除BlueZ,支持BlueDroid。
相比BlueZ,BlueDroid最值得称道的地方就是其框架结构变得更为简洁和清晰。
蓝牙适配器指数码产品适用蓝牙设备的接口转换器。
蓝牙适配器采用了全球通用的短距离无线连接技术,使用与微波、遥控器以及有些民用无线通讯器材相同的2.4GHz附近免付费、免申请的无线电频段,为避免此频段电子装置众多而造成的相互干扰,因而以1600次高难度跳频以及加密保密技术。
I. Android 蓝牙开发,求解如何代码实现让本机与其他设备进行连接未配对的先配对,已配对的直接连接.
我在github有写过一个例子:https://github.com/TitleZWC/BLEDemo
希望对你有帮助
J. android ble有哪些开源框架
你是用tcp还是http与服务器通讯,tcp的话可以用socket,哪有 什么框架,你要是用http的话 是你描述的那样,我写过一点用socket通讯的应用,但是没有xml,struts,json什么的东东,那些没有用过