|
BlackBerry 10 的config.xml文件模板如下
' g0 r, F1 Q: K, r. D" R* l; z% d1 d+ |) |5 n( Y1 v
<?xml version="1.0" encoding="utf-8"?>
: o! o( r B2 w! i6 h# T0 J<widget xmlns="http://www.w3.org/ns/widgets" 4 o7 l E6 V9 g) i. ]8 h* O
xmlns:rim="http://www.blackberry.com/ns/widgets"
% R* C: L1 A: `( B3 A version="2.0.0.0" id="sampleapp"> $ Q2 k& }0 O* B+ z% H- R! P; V
<author href="http://www.example.com/" 8 t O" \) y$ g' @# g
rim:copyright="Copyright 1998-2012 My Corp">My Corp</author>
" s1 Q- [; r4 }8 @<name>Sample application</name>
2 f& y# z8 C$ v- @' n0 r* g4 Z<description>! u* W+ l8 U" D8 M3 i) ]
A sample application to demonstrate some features.
/ S0 g V' w: U) q2 G; C& P</description>
) c# r, k6 z5 B/ t$ V$ m: B9 ~/ q# D% q( g' Y
<rim:permissions>
+ Y( k- U0 [5 ^6 [$ A0 K% {& k <rim:permit>access_shared</rim:permit>2 C' Y }) L# P3 n" B5 a4 y) j6 E
<rim:permit>access_location_services</rim:permit>0 J2 h8 Z/ ]6 |2 t* V1 I
<rim:permit>use_camera</rim:permit>, L& H+ `* Z$ _, G+ M% Z
</rim:permissions>, F+ L2 Y& U* B3 r" H; Z8 ^# t
% b( p& B7 X. K# `$ L
<icon src="icons/icon-150.png"/>
4 ?6 r6 _' v: X1 {6 n<rim:splash src="splash-1280x768.png"/>
! H! e( f# ] A% p$ \) Y<rim:splash src="splash-768x1280.png"/>+ @) t; ]$ Q% b- D# A8 H& C# [! I
<content src="index.html" rim:allowInvokeParams="true"/>
" J x9 X& f: `, j) e9 j* p9 ~! Q<feature id="blackberry.ui.dialog"/>) Q0 Z2 s' u+ D+ H# S7 }! X
<feature id="blackberry.app.orientation">" J/ {6 Y; a' M/ a/ W
<param name="mode" value="portrait" />
( H, h6 v% b% f2 [, [2 Q% m2 R</feature>
" H' T, o5 I2 m- M' |. I: Q" k<feature id="blackberry.app">
7 `; f' C( p1 o <param name="backgroundColor" value="0xFFFF0000" />/ O% `, C8 U& l s4 v
</feature>2 o) r! f9 G! f: S# f" r/ c( b8 p
<access uri="http://www.somedomain.com" subdomains="true">
$ O# M X0 ?: o' l4 m <feature id="blackberry.app" required="true" version="1.0.0"/>
2 r4 _: S- [: x; p# i. I5 f <feature id="blackberry.invoke" required="true" version="1.0.0"/>- `* j) F7 G( g l8 J
</access>
6 g1 Q D( N3 p- s: i8 ?<license href="http://www.example.com/"/>
+ d) e: y" U% l2 o, U6 r; _3 j</widget>9 s/ U/ n, b0 E, n, Q! n
1 A3 D/ z1 l' N: a2 e
! ?- f' a0 n" a; i* \$ ^各元素释义1 B: `* f3 f4 c3 D( V4 q0 @
widget
5 I0 u( y7 E* l( C, p/ Swidget元素的属性如下:; t2 J, q# D* H$ ^" ?9 I
' x# }, Z# c" t, \ S- C/ ]
<widget xmlns="http://www.w3.org/ns/widgets"
$ _) ~2 e7 z7 i# @- ?) w& L8 T. }, L xmlns:rim="http://www.blackberry.com/ns/widgets"
/ a g- U( t9 g- p xml:lang="string"% T0 ?' W4 A1 m t
version="2.0.0.0" % D* @7 [) R+ M' [: p1 [5 ?
id="sampleapp"# y' }$ n, t3 c4 L+ U+ m& ?* h5 q' V+ w
rim:header="RIM-Widget:rim/widget"3 R) o' e$ P/ f! z, ]7 x. Y
rim:userAgent="BlackBerry10/MyWebWorksApp">
. d+ E. P% K1 H J. o) G</widget>
9 `# t' ~- I0 {/ ^/ X ~
4 t# k$ v0 S$ m& C
$ O$ Q0 c; c$ lversion 用于指定app的版本号,对于Playbook及BB10平台,可使用 X.X.X 或者 X.X.X.X 形式,除此之外的版本号会导致应用打包失败.
" m: i4 Z. k, s- v8 ~rim:header 指定一个HTTP头,通过该应用程序所发出的每一个HTTP请求都将附带该HTTP头,可用于区分来自webworks应用程序的访问和来自普通浏览器的访问.
! B5 F- r8 g8 r' ]4 Srim:userAgent 指定userAgent字符串,可用于区分来自webworks应用程序的访问.9 U6 I7 G( z1 H: S! L$ e
id 应用程序的唯一ID,建议使用反向DNS格式的字符串,如“com.mydomain.app”.该属性对于应用程序的更新管理是非常关键的,同一vendor下的各个app应有独立的ID. 如果不设置,将默认为“default”字符串 .此项值存在于封闭后的bar文件中, 使用解压缩软件打开bar内的MANIFEST.MF文件,其中的Package-Name项即为此值的加密串,形如:sampleApp6d5d8d2973ab439a52d274dffa2b018 .
; C4 M9 f3 [3 D# ? l4 s9 j+ p6 G# z8 W3 k( r6 f( Z
' V; ~+ L% A/ Y! ^5 e" I
author
' d+ _0 S1 W) m8 }7 m. C$ R, b4 O$ b" n
author元素的属性如下:5 B- W/ K6 L4 u0 |
/ M3 i& s# I. x: K <author href="url"+ z$ A& C. Z' g. J/ X
email="email"
: `3 O3 T u3 e rim:copyright="string"3 X( ~) t: n$ y4 R A
xml:lang="string">authorID</author>0 n6 z! @, ^5 K$ M
' i% b5 y6 Z; u+ }: ]/ R
1 r0 t" l4 x) X$ t M' {
. ?2 I: X& i' w! Y7 l; \
href 用于指定app作者的网址,如作者的个人网站或企业网站等.该属性可通过 blackberry.app.authorURL 获取.
' Q3 H- u/ O/ H/ Y* e! w- Z. Trim:copyright 版权信息.该信息会显示在应用程序的关于页面,例如 *Copyright 1998-2009 My Company Inc. * 该信息可通过 blackberry.app.copyright 获取.) H V8 u `1 c [
email 作者的Email地址.该信息可通过 blackberry.app.authorEmail 获取.- s3 w, c# u- v% } t/ E0 }4 B; a
name' k. Y! T, o5 V
应用程序名称,该名称即为显示于设备上的图标名称.该字段长段不能超过25个字符,可通过 blackberry.app.name 获取.$ z, b; W6 B6 H2 B' X* B* l) `0 q
( N+ e+ m& V4 l; ddescription
8 H2 s' P8 j' |% s应用程序功能描述文本.
; V4 R9 S4 j ]* s/ d1 z6 F" s6 Z2 e* K% E2 ^5 A
rim:permissions) H! n& n+ q( [% E' I+ c* C
应用程序的权限清单.在此处申明本应用程序所需的权限.此元素的子项为 rim:permit . 有关 rim:permit 的细节,可以参阅 rim:permit3 `5 y3 {; D: A) h) ^
. F5 Y. j% c/ h' q2 n8 `; W
icon0 N' Y4 V$ y S6 ]
应用程序的图标。对于Playbook设备,此图标的大小应为 86×86 ;对于BB10设备,此图标的大小应为 150×150 ,均为24bit PNG格式且带alpha通道,可设置多个icon元素,分别对应不同大小的图标。 如果不指定icon,则使用默认图标. 如果要针对不同的语种提供不同的图标,可以使用以下形式:
! [* M. t+ h" v
( W: v- F$ Y5 e) Gconfig.xml中的声明
x" y! J& A) |* k9 B
% j5 i( k. ^" v# K% N <icon src="icon-86.png" />
+ x+ `. U6 f( ` t<icon src="icon-150.png" />
0 Q. V% h# p( Q
8 M4 |+ H7 t& c3 C% { W
& b e6 Y: w) b, ?! q$ L0 v C9 l N文件系统结构
% a! q0 F* Y" f% p/ ^0 ?0 V J4 F/ h/ x: `( T q# M
locales/de/icon-86.png, @8 i6 ^' [9 r
locales/de/icon-150.png
% d2 a+ D3 o8 Alocales/fr/icon-86.png
, Y& S8 Z" S3 Q- V1 O3 Ricon-86.png! U# G9 {; s( l* d- w( C3 i3 X
icon-150.png0 ~' Q: b# s, X0 ?
' Z0 e0 l+ G2 Z2 d8 `+ _& G
+ V( j e2 H; F" F* R2 {
/ s$ I0 \5 B, j7 `文件系统中的文件夹必须为app根目录下的 locales ,次级目录的命名参考 BCP 47 – Tags for Identifying Languages ,如 en-US或者fr,次级目录内的文件名应与icon元素指定的文件名完全一致.
1 F6 j5 S9 p4 G! H1 q0 x" l' a( L% Q1 w
* R! A M9 ]2 z" ]7 f. ~rim:splash! v/ N e# y5 G( D' m! v
应用程序的启动画面,可设置多个此元素,对应不同大小及方向的屏幕(横屏状态下启动或者竖屏状态下启动)。如:
9 a1 Q- y" o. X( ?% s$ ^3 p& |% b7 g( _/ Y, H4 F. V' |3 I
<rim:splash src="splash-1024x600.png" />! G2 M8 O& j3 r. i5 G
<rim:splash src="splash-600x1024.png" />
$ |0 w1 _5 ^# k<rim:splash src="splash-1280x768.png" />) t+ }- N7 L. h- {5 r
<rim:splash src="splash-768x1280.png" />8 X" c. E+ m% ?" Y& Y5 S& g
. c/ T2 S1 n/ K
: t- I3 G. p' |9 q' E* \* T
8 m! I2 k& ^* l6 k" U+ ?该选项也支持多语种环境显示不同画面,文件系统结构如:# o- `' N/ A' j
3 a K, c3 ~, T' R1 k f5 \
) z8 W. h4 u y2 c, D
locales/de/splash-1024x600.png' T/ k6 j3 j/ _) J2 x
locales/de/splash-600x1024.png' W. Z& c8 I6 g
locales/de/splash-1280x768.png
5 b0 D; e. w, w; K( z. y* hlocales/de/splash-768x1280.png3 D) {* ^1 _. M4 m
locales/fr/splash-1280x768.png; x1 j5 l- z7 E% ?4 X. s2 ]# d% c; z
locales/fr/splash-768x1280.png. X/ m( n* |' I+ f' n
splash-1024x600.png& ]/ u5 F& P6 Y
splash-600x1024.png
. y9 |/ j! B5 Z, _% f/ k {+ e2 z5 Jsplash-1280x768.png
2 X# J- d8 C: l/ Y7 U6 _splash-768x1280.png
' ^+ r' ^8 R; K0 b6 I$ f 8 L1 J" y' k& t7 Y9 L' D
( ^8 g9 s" k5 o: T+ Y; K
7 J% k& m! E5 @2 S+ scontent) i9 q1 _3 ^9 W1 u1 x6 K1 I; `, Z& V
content元素指定应用程序的主页面,URL内可为相对路径(如index.html),绝对路径(local://index.html) 或者URI(如http://192.168.1.1/index.html)7 s; d4 y. u2 g" w" R i8 w
- X. x5 q& L' H. q5 T
" H0 e3 I- k# |+ U& \4 [. u8 x <content src="string"9 b8 A) p* B1 ~+ N
rim:allowInvokeParams=["true" | "false"]- N2 s6 o- Z( Q% W' X
type="string"
, Y" e- d& H, M6 [) R/ K charset="string" />; g$ x7 r5 l5 X u9 d
5 T: \* i8 Z A H4 G) d- L2 `6 ^( y7 ]+ { F- n8 o
& @4 x5 d3 W3 }: v* |其中rim:allowInvokeParams属性用来指定应用程序是否可接受外部调用,默认为false。type和charset属性用于指定src所指向文件的类型和charset。
# V* N1 I0 E8 V
J( _, f9 ?0 }$ H0 ifeature$ w- _" {6 A6 y- w8 t% `' {
feature元素指定应用程序所声明的系统API功能及参数,或者启用某个默认情况下不启用的功能(如BB10上的FLASH插件)。4 F$ a& U3 j) X+ V1 E" l
6 }* m- U$ e. Z2 X& K
! p$ \ |. Q; ?& R7 r j8 Z <feature id="string"4 H6 Y# u& K- `
required=["true" | "false"]
2 e$ z, h: g P) }9 B version="string" />
/ q4 G5 X; J: p. N2 B8 n" t: Q
8 o- X* c% X9 y7 S/ \
4 i6 N d9 B+ y6 g7 _- q
5 H, R- t. Z; k; p当feature出现在access元素内时,代表在某一外部域下使用该功能,直接出现在根元素下时,代表在webworks app的local范围内使用该功能。) e/ t! z; A; i) \0 `" F' \
7 h) E% Y* V" w; a/ v7 |- t$ h8 CID BlackBerry API 的名称,取值须完整匹配API名称(大小写不敏感),不可使用通配符(如*)。 要启用BB10的Flash插件,需在根元素下声明 <feature id=“enable-flash”> ,该feature不能在access元素下声明。2 D& ]( D- h0 C0 f
required 这个是为了符合w3c标准而设置的. j$ S U3 _$ a
version 指明API的版本号。
) q' Y5 f. _' G; {$ ?access1 [2 ]# _- k c& ^: S+ c
access元素声明应用程序对指定域资源的访问权限。
+ U/ G( o" y& _, v- V2 [% K
3 a. ]/ v- T7 s5 N* n$ r <access uri="string" subdomains=["true" | "false"] />3 J' r) p) R% g$ x# l
l8 C4 m% u5 u3 j. Z8 `: Q( |+ e+ {6 G: D3 @! y: S2 T
( ?# ]( A$ J( Z
其中 subdomains 设置为true时,允许访问该域的子域。; ~! `# _( _) ^. T ^+ T
8 [! F3 F/ s, ~* X9 V
license# P$ J3 \* @* b
license元素指向应用程序的详细EULA页面(使用href),或者直接引入License文本,如:' t/ U4 r* x$ }+ ~% m' s
5 R' M9 L5 F2 Y. a! O5 u8 H, h1 ?, Y8 K1 a: {
<license>3 d* x2 ^' L' p& T. L* l- s2 j
Example license
! d4 R7 E4 O2 l. U* A& nCopyright ? 2012 My Corp.
" v; |7 J8 ?2 J4 u7 _THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- Z2 \, U) @& F) F/ D' `EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
. u8 b8 c, i/ J i* \MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND3 A! C" }. ]9 ?0 Z( ~# v; o( M6 ^
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
0 z" \7 v) p& J! q9 I* l9 M+ DBE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
5 S! z. g+ E$ a6 v: y" {ACTION OF CONTRACT, INSULT OR OTHERWISE, ARISING FROM, OUT OF OR IN
. N. [3 p R9 PCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
9 {3 U6 _, m ?5 g6 C6 dSOFTWARE.% ^9 m3 F9 X: p
</license>" Z6 A' r* ^4 W, }: a
4 a) v" }7 ^, g9 {' j& d
2 g* D, X) B+ g# x$ f% J8 y/ @# D# o5 M! Q. ~7 A
$ C+ ] h2 Y2 h7 Q作者- _! M H* B! l; u4 ^3 Z7 Y
图图鲁,Vendor名称为anpho,黑莓个人开发者。7 t I t7 L- F Y8 a. i( v0 h
6 f' Y; O( I# Q' M+ I
) ?4 i# `. S3 f+ M) E) [: { 该贴已经同步到 金属狂人的微博 |
|