正如标题所示,我正在开发一款应用程序,它可以与另一部Android手机连接并配对。我可以通过蓝牙成功扫描,连接,配对和传输字符串数据。我通过发送String数据进行测试,并在另一个Android智能手机中接收并在吐司中显示。
实际情况
此应用程序将安装在两款Android手机中。一旦另一个Android手机扫描并通过蓝牙连接到手机,那么我想启动这个应用程序。我知道我们可以使用BroadcastReceiver完成此任务。但是我如何在蓝牙连接方面实现这一点。欢迎任何代码片段或想法或建议..
答案 0 :(得分:0)
获得BT消息后,希望您遵循此link,此后“//将获取的字节发送到UI活动” 发送广播以启动您的应用。
循环显示已安装的应用列表,并知道要启动的应用,并使用以下内容启动应用。
public String getPreInstalledPocPkgName(){
String pkgName = null;
try {
List<PackageInfo> pkgInfoList = mContext.getPackageManager().getInstalledPackages(0);
for(PackageInfo pkgInfo:pkgInfoList){
pkgName = pkgInfo.packageName;
if(pkgName==null || pkgName.equals("")){
continue;
}
for(String name:pttPkgList){
if(pkgName.equals(name)){
Log.d(TAG, "------------ app with package name ["+pkgName+"] already installed----------");
return pkgName;
}
}
}
} catch (Exception e) {
Log.e(TAG, "-------Error! while fetching previously installed app------", e);
clearConfigFromSharedPath();
}
Log.d(TAG, "------------No previously installed app----------");
return null;
}
}
String pttAppPkgName = getPreInstalledPocPkgName();
Or
pttAppPkgName = your app package.
PackageManager pm = getPackageManager();
Intent intent = pm.getLaunchIntentForPackage(pttAppPkgName);
startActivity(intent);