美国西部时间18号早上,也就是我们的19号凌晨,BlackBerry DevCon活动隆重举行,PlayBook 2.0开发测试版随之发布。PlayBook 2.0的一个重要功能就是支持Android应用。那么,如何将Android应用移植到PlayBook上呢?我自己测试了一下,成功在 PlayBook上运行Android应用,下面我们来看看具体的方法。

因为PlayBook 2.0上带有一个Android Player的组件,Android应用只需要做一个简单的转换,转换成PlayBook的bar文件,就可以在PlayBook上运行了。有关Android应用转换成PlayBook应用的官方网页如下:

https://bdsc.webapps.blackberry.com/android/

从上面的网页中可以了解到,将Android应用转换成PlayBook的bar文件有三种方法:

  1. 通过网页应用在线转换
  2. 通过Eclipse Plug-in在Eclipse环境中转换
  3. 使用命令行工具进行转换

其中通过网页在线转换最简单,下面就讲讲这种方法的具体准备工作和转换过程。

1.    Android SDK的准备

转换过程需要Android SDK的支持,需要提前安装好Android SDK,有关Android SDK的安装请参看相关文章。

2.    PlayBook 2.0 的准备

为了最终测试转换的应用,得有个PlayBook 2.0环境,如果你有一个PlayBook在手上,你可以到以下网站注册,升级PlayBook的操作系统到2.0版本。

https://bdsc.webapps.blackberry.com/android/beta/bbtablet20/register/

注册完等一段时间(按官方说法是一个小时以内),在PlayBook上检查软件升级(Software Update)可以开始升级PlayBook操作系统。具体操作在上面的网站中有指引。

如果你没有PlayBook在手上,只能通过模拟器测试了,在以下网址中点击Simulator可以下载一个PlayBook模拟器:

https://bdsc.webapps.blackberry.com/android/tool/

3.    申请签名密钥

在Android应用的转换过程中需要对应用进行签名,而应用签名需要一个签名密钥。所以我们需要到BlackBerry官网上申请一个签名密钥。

有关PlayBook签名密钥的申请在BlackBerry官网上专门有一篇文章进行介绍,请参考:

https://bdsc.webapps.blackberry.com/android/documentation/request_a_code_signing_key_1767016_11.html

大概过程如下:

先去下面的网站填写申请

https://bdsc.webapps.blackberry.com/android/signingkey

需要填写姓名,公司名等基本信息,还需要填写一个邮件地址和一个PIN码,这两个比较关键,最终签名密钥会发送到填写的邮件地址上,安装签名时需要用到PIN码。注意这里的PIN码和手机或者是PlayBook的PIN码都没有关系,你自己填写一个6到10位的数字就行,如1234567890,填完一定要记住,后面需要使用的.

然后你就会收到带有签名密钥的邮件了,里面有两个csj文件:

RIM Development Key (RDK)

Berry PlayBook debug token (PBDT)

之前的做法是将csj文件导入到PlayBook开发环境中生成p12密钥文件,然后就在PlayBook开发环境中直接使用签名工具进行签名。现在有了在线工具就可以直接在网页上使用上面的csj文件了。将两个csj文件保存下来,一会需要使用到。

4.    第一次转换

准备好签名密钥后就可以到网站上开始转换Android 的apk文件了,因为第一次转换的时候需要设置签名密钥,所以第一次签名的过程有点特殊。具体过程如下:

通过浏览器打开以下网页:

https://bdsc.webapps.blackberry.com/android/bpaa/

打开后出现欢迎页面如下,点击“Go>>”到下一步:

然后填写你的邮件地址,并选择“I already have BlackBerry Tablet OS Signing Keys”和“I have rad and agree to the RIM SDK License Agreement”两项,就是告诉服务器你已经申请了签名密钥。注意不要选择“I have already configured my computer for signing”一项,这样才会开始签名密钥的设置页面。当你第一次设置成功了,后面再进行签名就可以选择这项了。

选择后点击“Next”

然后会提示后续过程需要一些授权,需要你点击“Set Applet Permissions”按钮进行授权。授权后点击“Next”。

进一步需要对你的apk文件进行校验,需要选择准备转换的apk文件和Android SDK的目录,选择完了以后点击“Start Test”按钮进行校验。

如果校验成功的话会提示“Your app is compatible with the BlackBerry Runtime for Android Apps”,就是说你的Android应用和PlayBook上的Android 运行环境兼容。

成功后点击“Repackage & Submit”按钮进行转换。

然后进入关键的一步,因为签名密钥没有配置,这里系统会提示对签名密钥进行配置。

需要配置的包括:

  1. RIM Development Key .csj文件

这个文件在签名密钥的邮件中可以找到

  1. BlackBerry PlayBook debug token .csj文件

这个文件在签名密钥的邮件中可以找到

  1. keyStore密码

设置本地证书存储空间的密码,按自己喜好设置一个密码就行,注意需要输入两遍

  1. CSK密码

CSK密码,同样按自己喜好设置一个,也是需要输入两遍

  1. 注册时填写的PIN码

这里要填写的就是申请密钥是填写的那个6到10位数字的PIN码。

  1. 证书路径,文件名

指定一个路径和文件名,最终生成的相关信息会保持在这个文件中。

  1. 公司名

填写自己的公司名,似乎服务器并没有对公司名做严格校验,填写公司拼音就可以,关键是要记住这个名字,以后转换时需要用到。

填写完后点击“Configure”就可以了。

配置完成后最终服务器会将指定的apk文件转换成bar文件,并对bar文件进行签名。所生成的文件在结果页面中会显示出来,如下图:

这样就完成了第一次转换工作,同时完成了签名密钥的配置工作,后续的转换工作就不用这么复杂了。

5.    后续应用转换

在后续的Android应用转换过程中,不需要再次配置签名密钥,可以直接使用第一次转换时生成的证书文件。

进行转换的网址不变,还是

https://bdsc.webapps.blackberry.com/android/bpaa/

不过到“Agree to License”页面时需要选择“I have already configured my computer for signing”一项,告诉服务器当前机器上已经配置过签名密钥了,如下图:

转换过程中同样需要选择本地的apk文件,然后对apk文件进行校验,校验过程和第一次转换相同。

在应用校验成功后,在“Packaging and Signing”页面中需要选择本地的证书文件并填写对于密码。

这里的证书文件路径就是第一次转换时设置的证书文件路径,

紧接着需要输入KeyStore密码和CSK密码,就是第一次转换时设置的两个密码。

最后一个就是公司名,也是第一次转换时设置的。

填写完成后点击“sign”按钮就可以进行在线转换,转换成功的话页面顶部会显示绿色的成功消息,大意是bar文件已经生成并进行了签名。

结果如下图:

下一步又是结果页面了,会告诉你生成的bar文件在哪里。

6.    应用测试

应用转换后就可以在PlayBook上测试了,测试的基本过程是先启动PlayBook的开发调试模式,然后记录PlayBook的IP地址,最后通过BlackBerry-Deploy工具将所转换的bar文件上传到PlayBook上测试。

当然,将bar文件上传到PlayBook上进行测试的方法有很多,这里就不详细讲述了,对这一步有疑问的同学们可以参考其它文章。

最后就不上图了,我做的测试的Android应用字太小,照相出来看不出什么效果。大家有条件的自己试一试吧。

将 Android 应用移植到 BlackBerry PlayBook 上的更多相关文章

  1. 使用命令行工具将Android应用转换成BlackBerry PlayBook应用

    昨天写了篇文章关于Android应用转换的,通过BlackBerry的在线转换工具将Android应用转换成BlackBerry PlayBook应用.有网友反映说方法有点麻烦,所以今天补上新的转换方 ...

  2. 如何快速把安卓应用移植到BlackBerry 10上

    如何快速把安卓应用移植到BlackBerry 10上 相关博客: BlackBerry相关文档 http://developer.blackberry.com/android/documentatio ...

  3. Android系统移植(一)-让android系统在目标平台上运行起来

    编号),文件系统采用ubifs格式,控制台设备为ttyS1,波特率为115200 启动的第一个应用程序是/init (6)确保控制台的设置和硬件保持一致,如:硬件上串口用的是UART1,则内核启动参数 ...

  4. 第一章 Android系统移植与驱动开发概述

    本书第一章首先简单概要地介绍了关于Android系统移植和驱动开发的相关内容. 所谓“移植”是指为特定的自己的设备,如手机定制Android的过程.自己开发一些程序(移植)装载在设备上,使得Andro ...

  5. 浅谈Android系统移植、Linux设备驱动

    一.Android系统架构 第一层:Linux内核 包括驱动程序,管理内存.进程.电源等资源的程序 第二层:C/C++代码库 包括Linux的.so文件以及嵌入到APK程序中的NDK代码 第三层:An ...

  6. 第一章Android系统移植与驱动开发概述--读书笔记

    以前,初步学习过嵌入式Linux驱动开发的基础课程,对于驱动开发可以说是有了一点点微末的基础吧.首先我们要对Android嵌入式系统有一个初步的认识,Android系统发展到今天已经具备了完善的架构. ...

  7. Android——程序移植 相关知识总结贴

    android 移植笔记有感 http://www.apkbus.com/android-11842-1-1.html   Android振动器系统结构和移植和调试 http://www.apkbus ...

  8. 详细介绍android rom移植知识普及

    详细介绍android rom移植知识普及 最近接到很多兄弟们的求助,也回答过无数个和下面这个问题类似的问题: 如何编译android 原生代码得到一个rom,然后跑到某某手机上. 鉴于很多兄弟对这块 ...

  9. NDK Android* 应用移植方法

    概述 本指南用于帮助开发者将现有的基于 ARM* 的 NDK 应用移植到 x86.假设您已经拥有一个正常执行的应用,须要知道怎样可以高速让 x86 设备在 Android* Market 中找到您的应 ...

随机推荐

  1. 基于OSGI.Net的图形界面系统

    在2013年的十月份有幸接触了osgi.net和iopenworks的创始人,了解和学习的插件式开发,开始了后台数据的处理生涯. 第一个有图形界面的系统——智能农业的环境监测系统,其实在这个系统中所有 ...

  2. Quartz与Spring集成

    关于Quartz的基本知识,这里就不再多说,可以参考Quartz的example. 这里主要要说的是,个人在Quartz和Spring集成的过程中,遇到的问题和个人理解. 首先来说说个人的理解: 1. ...

  3. [转]Centos配置国内yum源

    原文地址:http://blog.chinaunix.net/uid-23683795-id-3477603.html 网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常 ...

  4. 《学习OpenCV》练习题第四章第一题a

    #include <highgui.h> #include <cv.h> #pragma comment (lib,"opencv_calib3d231d.lib&q ...

  5. 第三百二十八天 how can I 坚持

    今天电脑快把我搞疯了,一天得死机快十次,不知道怎么回事,最后升级了win10,感觉就是比较好. 哎,成了这个样子,当初为什么又让我抽中了那个签,搞不懂啊,这都是为啥. 我哪里错了,还是冥冥中自有天意, ...

  6. 通过用 .NET 生成自定义窗体设计器来定制应用程序

    通过用 .NET 生成自定义窗体设计器来定制应用程序 https://www.microsoft.com/china/MSDN/library/netFramework/netframework/Cu ...

  7. 转】MyEclipse使用总结——设置MyEclipse使用的Tomcat服务器

    原博文出自于: http://www.cnblogs.com/xdp-gacl/p/3935499.html 感谢! 一.设置使用的Tomcat服务器 如果不想使用MyEclipse自带的tomcat ...

  8. jxse2.6在jdk8下,JxtaMulticastSocket存在的问题

    JxtaMulticastSocket覆写了java.net.MulticastSocket的bind方法: @Override public void bind(SocketAddress addr ...

  9. tty & pty & pts

    [tty & pty & pts] 基本概念: 1> tty(终端设备的统称):tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过 ...

  10. XML文件的生成与读取

    从数据库生成: public static void ToXML(string tablename) { //获取数据 string sql = "select * from " ...