Alljoyn 概述(3)
开发工具
• scons:一个 Python写的自动化构建工具,是对 gnu make 改进的替代工具
• D-Feet:一个D-Bus调试工具
• C++ Code Generator Tool (ajcppgen)
– 根据 service interface 定义自动生成 C++ 框架代码的工具
– 输入是XML文件,描述 service object(s) and interface(s)
– 输出是C++ 文件,包括 service 端和 client 端
Ubuntu下 AllJoyn源码编译方法
• 预先准备工作:
– 成功编译过的完整 Android源码,假设路径为 /home/zhuangwf/android/
– 安装 JDK 1.6,假设安装到 /usr/java/jdk1.6.0_30/
– 设置如下环境变量(可加到 /etc/profile 或 ~/.bashrc 中):
export JAVA_HOME=/usr/java/jdk1.6.0_30
export CLASSPATH=JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jar:/home/zhuangwf/android/out/host/linux-x86/framework/junit.jar
export PATH=JAVAHOME/bin:PATH
– 安装 Android NDK r7,假设安装路径为 /home/zhuangwf/android-ndk-r7/
– 安装 scons:apt-get install scons
– 安装 uncrustify (版本0.57 is OK)
– AllJoyn源码,假设路径为 /home/zhuangwf/alljoyn/
• 编译源码的命令:
scons OS=android CPU=arm ANDROID_NDK=/home/zhuangwf/android-ndk-r7/ ANDROID_SRC=/home/zhuangwf/android/ ANDROID_TARGET=generic WS=off
Ubuntu下AllJoyn sample app编译和运行方法
• 预先准备工作:
– 安装 eclipse 和 Android SDK
• 编译 sample应用程序:
– sample app 有C++写的(带java写的UI) 也有纯 Java 写的,其中 Java sample app 源码位于 /home/zhuangwf/alljoyn/alljoyn_java/samples/android/,经实际验证OK
– 用 eclipse 编译 sample app
• 运行 sample app方法:
– 安装 sample app 之 .apk 到各设备上
– adb push /home/zhuangwf/alljoyn/build/android/arm/debug/dist/bin/alljoyn-daemon
到各设备上
– 各设备连接 WiFi
– 在各设备 adb shell 下运行:alljoyn-daemon –internal –fork
– 在各设备上运行 sample app
AllJoyn应用案例
• NearVerse 公司,在其产品 LoKast 的 Android 版本上 使用了 Alljoyn 技术
• Aliph公司,音乐共享软件JamJoyn
• 一些 multi-player游戏:例如 QwikDraw、Spudball
• 国内公司:
– Tencent QQ Chat & Contact Share
– A-One Gaming
– Tapas Business Card Sharing
– DuoMi Music
– AliPay by Alibaba
• 此外,高通已在其参考设计 Qualcomm Reference Design (QRD)上将 AllJoyn集成到 Android中,作为 缺省的功能提供给设备制造商和应用开发者
存在的问题
• AllJoyn只 供了一个基本的通用的P2P框架,没有供针对特定应用类型的profile,例如象 DLNA 那样专门面向媒体应用的框架或者象 bluetooth 那样供各种应用profile,需应用程序自己实现
• AllJoyn框架中未定义类似于 UPnP 的设备 述、服务 述机制,service的命名、方法的定义等也都没有统一 的规范和标准,均需由应用程序自行约定(因此 service端和 client端应用程序需由同一开发者开发维 护)
• 在企业办公环境中因 WiFi AP 往往被设为禁止转发 IP 组播包,因而 AllJoyn 设备发现失效(其他类似技术例 如UPnP也存在同样问题)
• AllJoyn 主要解决设备发现和连接,比较适合基于简单 数据传输的控制类应用,不适合实时大数据量传输应用 (例如流媒体),对这类应用需与其他技术相结合。
Alljoyn 概述(3)的更多相关文章
- Alljoyn 概述(2)
AllJoyn 基本概念 • 总线(Bus) – 实现P2P通信的基础 – AllJoyn 的底层协议类似于D-Bus,相当于是跨设备分布式的 D-Bus • 总线附件(Bus Attachment) ...
- Alljoyn 概述(1)
Alljoyn Overview Feb. 2012- AllJoyn 是什么? • 2011年2月9日发布,由 QuiC(高通创新中心)开发维护的开源软 件项目,采用 Apache license ...
- AllJoyn 了解
AllJoyn是一个中性平台系统,旨在简化邻近异构分布式移动通信网络系统.这里的异构性不仅表示不同的设备,而且可以是具有不同操作系统和不同类型的设备(例如个人电脑.手机.平板电脑和消费性电子产品),并 ...
- 【AR实验室】ARToolKit之概述篇
0x00 - 前言 我从去年就开始对AR(Augmented Reality)技术比较关注,但是去年AR行业一直处于偶尔发声的状态,丝毫没有其"异姓同名"的兄弟VR(Virtual ...
- Recurrent Neural Network系列1--RNN(循环神经网络)概述
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- .Net 大型分布式基础服务架构横向演变概述
一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 二. 基础 ...
- [C#] 进阶 - LINQ 标准查询操作概述
LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
随机推荐
- Android Studio 运行、编译卡死的解决办法
Android stuido作为google主推的IDE,配合gradle编译,有很多的优点和便捷性.唯一使用过程中不舒服的地方就是莫名其妙的卡顿,经常在Gradle Build的时候卡死强制重启电脑 ...
- LCD显示的一些基本概念以及DSI的一些clock解释
数字视频的基本概念源自于模拟视频.对于模拟视频我们可以这样理解:视频可以分解为若干个基本视点(像素),每个像素都有独立的色彩信息,在屏幕上依次将 这些点用电子枪按照行和列打出来,就形成了一幅完整画面 ...
- Centos6快速yum lamp
yum install httpd httpd-devel mysql mysql-server mysql-devel php php-mysql php-common php-gd php-mb ...
- 广州Uber优步司机奖励政策(1月25日~1月31日)
滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...
- hdoj 4786 Fibonacci Tree【并查集+最小生成树(kruskal算法)】
Fibonacci Tree Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)To ...
- 【Android - 框架】之XBanner的使用
一.XBanner简介 XBanner是一个非常优秀的无限自动轮播框架,也是一个控件.这里是XBanner的GitHub地址 XBanner的主要功能如下: 根据传入的数据条数自动调整广告页数 当图片 ...
- C# SQL多条件查询拼接技巧
本文转载:http://blog.csdn.net/limlimlim/article/details/8638080 #region 多条件搜索时,使用List集合来拼接条件(拼接Sql) Stri ...
- clock_gettime测代码运行时间
//函数原型: // long clock_gettime (clockid_t which_clock, struct timespec *tp); //参数列表: // CLOCK_REALTIM ...
- otg线是什么,otg线和数据线的区别介绍
OTG是什么? OTG主要应用于各种不同的设备或移动设备间的联接,进行数据交换.USB技术的发展,使得PC和周边设备能够通过简单方式.适度的制造成本将各种数 据传输速度的设备连接在一起.上述我们的应用 ...
- linux可重入、异步信号安全和线程安全
一 可重入函数 当一个被捕获的信号被一个进程处理时,进程执行的普通的指令序列会被一个信号处理器暂时地中断.它首先执行该信号处理程序中的指令.如果从信号处理程序返回(例如没有调用exit或longjmp ...