开发工具

• 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)的更多相关文章

  1. Alljoyn 概述(2)

    AllJoyn 基本概念 • 总线(Bus) – 实现P2P通信的基础 – AllJoyn 的底层协议类似于D-Bus,相当于是跨设备分布式的 D-Bus • 总线附件(Bus Attachment) ...

  2. Alljoyn 概述(1)

    Alljoyn Overview Feb. 2012- AllJoyn 是什么? • 2011年2月9日发布,由 QuiC(高通创新中心)开发维护的开源软 件项目,采用 Apache license ...

  3. AllJoyn 了解

    AllJoyn是一个中性平台系统,旨在简化邻近异构分布式移动通信网络系统.这里的异构性不仅表示不同的设备,而且可以是具有不同操作系统和不同类型的设备(例如个人电脑.手机.平板电脑和消费性电子产品),并 ...

  4. 【AR实验室】ARToolKit之概述篇

    0x00 - 前言 我从去年就开始对AR(Augmented Reality)技术比较关注,但是去年AR行业一直处于偶尔发声的状态,丝毫没有其"异姓同名"的兄弟VR(Virtual ...

  5. Recurrent Neural Network系列1--RNN(循环神经网络)概述

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 本文翻译自 RECURRENT NEURAL NETWORKS T ...

  6. Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)

    本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...

  7. .Net 大型分布式基础服务架构横向演变概述

    一. 业务背景 构建具备高可用,高扩展性,高性能,能承载高并发,大流量的分布式电子商务平台,支持用户,订单,采购,物流,配送,财务等多个项目的协作,便于后续运营报表,分析,便于运维及监控. 二. 基础 ...

  8. [C#] 进阶 - LINQ 标准查询操作概述

    LINQ 标准查询操作概述 序 “标准查询运算符”是组成语言集成查询 (LINQ) 模式的方法.大多数这些方法都在序列上运行,其中的序列是一个对象,其类型实现了IEnumerable<T> ...

  9. 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现

    篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...

随机推荐

  1. 【CF】474E Pillars

    H的范围是10^15,DP方程很容易想到.但是因为H的范围太大了,而n的范围还算可以接受.因此,对高度排序排重后.使用新的索引建立线段树,使用线段树查询当前高度区间内的最大值,以及该最大值的前趋索引. ...

  2. poj 2151

      http://poj.org/problem?id=2151                                                               Check ...

  3. AD域设置

    一.安装条件 · 安装者必须具有本地管理员权限 · 操作系统版本必须满足条件(windows server 2003 除WEB版外都满足) · 本地磁盘至少有一个NTFS文件系统 · 有TCP/IP设 ...

  4. 打开本地html的一些设置

    解决:打开本地html,提示:此网站窗口向您索取信息,如果信任此网站,请单击此处允许脚本窗口 工具-internet选项-安全-自定义级别-脚本-允许网站试用脚本窗口提示获取信息 选择启用 工具-In ...

  5. c++异常安全和copy and swap策略

    异常安全有两个目标: 不泄露任何资源.这个通过RAII可以做到. 不破坏数据结构.这是下文要讨论的事情 异常安全有三个级别: 基本安全:异常发生后对象和数据结构还有合法状态.实现简单,应该作为最低要求 ...

  6. .net 4中的pInvokeStackImbalance MDA默认是开启的

    今天把我之前发的一个小工具FreeEverything(基于everything的一个简易磁盘清理工具)升级到了.net framework 4.5,并且去掉了对mvvmlight的依赖.结果在测试运 ...

  7. 【Android - 进阶】之MultiDex的配置

    一.什么是MultiDex 随着时代的进步,人们对手机 APP 的需求越来越大,越来越苛刻,很多APP都变得很大,再加上APP都不可避免的需要导入一些框架.第三方类库等等,就更加大了项目的整体文件体系 ...

  8. IAAS云计算产品畅想-云主机的产品定位

    要研究某个产品的定位,就要先研究一下这个产品进入市场以后会影响了谁,被影响的产品产业,就是你的定位环境. 现例举一下公有云iaas服务影响了谁(按重要程度顺序): 1.企业IT 2.设备厂商 3.数据 ...

  9. jquery做个日期选择适用于手机端

    第一步:做个 文本框用于显示年月日的 第二步:点击文本框触发bootstrap模态框并显示 第三步:我是建一个外部js页面写的 js中获得当前时间是年份和月份,形如:201208       //获取 ...

  10. [Flux] 3. Actions

    Actions contain no functionality, but rather describe an event in our application. In this lesson we ...