开发工具

• 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. 14.7.4 InnoDB File-Per-Table Tablespaces

    14.7.4 InnoDB File-Per-Table Tablespaces 从历史上看,所有的InnoDB 表和indexes 是存储在system 表空间. 这个整体的方法是针对机器是整个用于 ...

  2. (转载)mysql中limit用法

    (转载)http://hi.baidu.com/sppeivan/item/e45179375d6778c62f8ec221   mysql中limit用法 使用查询语句的时候,经常要返回前几条或者中 ...

  3. c++学习笔记(2)类的声名与实现的分离及内联函数

    一.类的声名与实现的分离: 和c函数声明与实现分离类似 有.h : 类的声明 .cpp : 类的实现 在在一个类的cpp中应该包含本类的.h文件 在cpp中类的使用:例: //Circle类 //Ci ...

  4. U盘做启动盘后,如何恢复原始容量

    上次用U盘装系统后,U盘缩水1G多,格式化和快速格式化,没有用,无法恢复U盘原来的容量,后来在网上查到一个方法,成功释放U盘空间,故将恢复方法写在下面. (1)右击“我的电脑”,选择“管理”选项,之后 ...

  5. 003-python列表

    Python 列表(list) 列表是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 列表的基本操作: 索引 切片 追 ...

  6. 关于fork有意思的两道题目

    http://www.spongeliu.com/123.html 第一题,计算下面代码理论上总共打印了多少行:(网易2011笔试题) #include #include #include int m ...

  7. http://c7sky.com/works/css3slides/#1

    http://c7sky.com/works/css3slides/#1 css3 学习

  8. DevExpress LookUpEdit 下拉框基本操作

    <span style="font-size:14px;"> ArrayList list = new ArrayList(); //遍历皮肤,放到列表中 foreac ...

  9. 判断IMEI或MEID是否合法

    /*----------------------------------------------- * 判断此字串所代表的IMEI或MEID是否合法 * @param imei * @author H ...

  10. Dapper Use For Net

    Dapper.Net by example januari 6, 2012 When the team behind StackOverflow released the mini-ORM Dappe ...