note2719三网通荣耀 note8 蓝牙 4.0是4.0吗?

4.1版的蓝牙耳机能和4.0版的蓝牙手机相连接吗?怎么连接?
全部答案(共3个回答)
答:当然能连接,耳机的传输速度要求不高的,所以蓝牙4.0标准和蓝牙3.0标准的耳机用你的耳朵来听,效果一样!实际上因为耳机是蓝牙3.0标准的,所以蓝牙4.0标准...
和你的4.0的适配器传数据,看速度
蓝牙4.0要比此前的蓝牙版本功耗更低,在待机状态(不使用)的情况下,耗电量几乎可以忽略不计。蓝牙4.0技术可以使得一颗纽扣电池让设备工作一年之久,这在以前是不敢...
是连接不上还是开不了?在蓝牙设置里面看可见性是否设置为全部(所有)。开不了的话就只有去维修了
大家还关注
确定举报此问题
举报原因(必选):
广告或垃圾信息
激进时政或意识形态话题
不雅词句或人身攻击
侵犯他人隐私
其它违法和不良信息
报告,这不是个问题
报告原因(必选):
这不是个问题
这个问题分类似乎错了
这个不是我熟悉的地区在android 4.3以下的SDK中,由于各个厂商都是单独做的SDK,基本上开发出来的APP都互相不兼容,如何在android4.3以下及以上版本中做到兼容,将是以下要讲到的内容。
以samsung 4.2.2,htc4.2.2(htc的4.2.2和4.1.2是用一个jar的)和android4.3为例。
一、需要引用的包
samsung 4.2.2需要引用samsung_ble_sdk_200.jar,将samsung_ble_sdk_200.jar放在lib文件夹下,通过Add External JARS方式引入包;而htc4.2.2需要引用com.htc.android.bluetooth.le.jar, com.htc.android.bluetooth.le.jar是不能放在lib文件夹下,否则project将会出错,同样以Add External JARS方式引入包。Android4.3及以上的,则只要将project的SDK API版本更换至最高即可,同时要注意AndroidManifest中uses-sdk也要做相应更改,如:
1 &uses-sdk
android:minSdkVersion="16"
android:targetSdkVersion="18" /&
二、添加用户权限
&&&&&&&& Project需要蓝牙的使用权限,故需要添加uses-permission
1 &uses-permission android:name="android.permission.BLUETOOTH" /&
2 &uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /&
htc4.2.2(包括4.1.2),需要在application节点内添加
1 &uses-library
android:name="com.htc.android.bluetooth.le"
android:required="false" /&
android4.3及以上,需要添加
1 &uses-feature
android:name="android.hardware.bluetooth_le"
android:required="true" /&
三、应用程序的初始化
&&&&&&&& 由于项目需要做兼容性开发,故工程的结构尽量做到离散化,降低耦合性,方便以后的升级和功能扩展。
&&&&&&&& 在进入工程时,MainActivity需要做以下事情:
1、& 系统版本的识别
根据官方的API中的说明,可以获取到手机硬件信息,
手机型号 Build.MODEL
The end-user-visible name for the end product.
sdk版本 Build.VERSION.SDK
This constant is deprecated. Use&&to easily get this as an integer.
及frimware版本号(系统版本号)&Build.VERSION.RELEASE
The user-visible version string.
所以在java代码中,可以得到手机型号和版本
String model = android.os.Build.MODEL;// 获取手机型号
String version = android.os.Build.VERSION.RELEASE; // 获取手机版本
然后用正则表达式来匹配,例如匹配samsung4.2.2的系统如下:
Pattern patternsam = pile(".*[G][T].*[4][.][2].*"); // 匹配sam422
Matcher matcherSam = patternsam.matcher(model + version);
boolean isSam422 = matcherSam.matches();
以此类推,可以得到boolean类型变量isHtc422,isos43。于是将这些值用一个全局静态变量来表示,方便项目在用到蓝牙的地方做判断。
if(isHtc422){
ConstantsHelp.PhoneVersion=1; //Htc422
}else if(isSam422){
ConstantsHelp.PhoneVersion=2; //Sam422
}else if(isos43){
ConstantsHelp.PhoneVersion=3; //os43
ConstantsHelp.PhoneVersion=0; //No match
2、根据系统版本进入不同的Activity操作蓝牙
在做完系统匹配后,延迟自动进入蓝牙操作的界面
1 new Handler().postDelayed(new Runnable() {
public void run() {
switch (ConstantsHelp.PhoneVersion) {
Intent intent1 = new Intent(MainActivity.this,MainActivity_os422_htc.class);
startActivity(intent1);
Intent intent2 = new Intent(MainActivity.this,MainActivity_os422_sam.class);
startActivity(intent2);
Intent intent3 = new Intent(MainActivity.this,MainActivity_os43.class);
startActivity(intent3);
Toast.makeText(getApplicationContext(), "The app is not supported in your phone", Toast.LENGTH_LONG).show();
MainActivity_os422_htc,MainActivity_os422_sam,MainActivity_os43同样要在AndroidManifest中注册,还有相应的Service。四、主程序的初始化1、界面初始化MainActivity_os422_htc,MainActivity_os422_sam,MainActivity_os43虽然是不同的Activity,但它们的界面是一样的,即setContentView(R.layout.activity_main)里面的View是一样的。2、蓝牙的初始化由于是在不同的Activity中,htc422不会进入sam422的Activity,所以相互之间不会有影响,蓝牙的初始化和操作可以跟写单独的版本的Project是一样的。由于本人水平有限,欢迎大家给予指导,如要转载,请注明出处
阅读(...) 评论()}

我要回帖

更多关于 蓝牙4.0和4.1的区别 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信