论坛
BBS
空间测绘
发表
发布文章
提问答疑
搜索
您还未登录
登录后即可体验更多功能
立即登录
我的收藏
提问答疑
我要投稿
IOT
[21032] 2020-05-16_Android系统的五种数据存储形式
文档创建者:
s7ckTeam
浏览次数:
8
最后更新:
2025-01-18
IOT
8 人阅读
|
0 人回复
s7ckTeam
s7ckTeam
当前离线
积分
-54
6万
主题
-6万
回帖
-54
积分
管理员
积分
-54
发消息
2020-05-16_Android系统的五种数据存储形式
A
n
d
r
o
i
d
系
统
的
五
种
数
据
存
储
形
式
L
e
m
o
n
S
e
c
2
0
2
0
-
0
5
-
1
6
很
多
东
西
在
实
际
工
作
中
碰
不
到
,
用
不
到
。
慢
慢
的
也
就
荒
废
了
,
学
的
东
西
太
杂
,
好
多
东
西
都
是
学
到
一
半
就
放
下
了
。
最
后
似
乎
成
了
一
无
所
精
。
慢
慢
的
越
来
越
迷
茫
。
年
前
学
了
一
段
时
间
C
,
还
没
学
会
就
开
始
学
C
T
F
,
依
旧
是
还
没
入
门
就
开
始
了
红
蓝
对
抗
。
最
近
思
考
的
东
西
越
来
越
多
,
好
像
回
家
放
羊
,
只
放
一
只
。
找
出
了
自
己
1
6
年
的
笔
记
,
荒
废
的
东
西
总
要
先
捡
起
来
。
A
n
d
r
o
i
d
系
统
有
五
种
数
据
存
储
形
式
,
分
别
是
文
件
存
储
、
文
件
存
储
、
S
P
存
储
、
数
据
库
存
储
、
存
储
、
数
据
库
存
储
、
c
o
n
t
e
n
t
p
r
o
v
i
d
e
r
内
容
提
供
者
、
网
络
存
储
内
容
提
供
者
、
网
络
存
储
。
其
中
,
前
四
个
是
本
地
存
储
。
存
储
的
类
型
包
括
简
单
文
本
、
窗
口
状
态
存
储
、
音
频
视
频
数
据
、
X
M
L
注
册
文
件
的
各
种
数
据
。
各
种
存
储
形
式
的
特
点
不
尽
相
同
,
因
此
对
于
不
同
的
数
据
类
型
有
着
固
定
的
存
储
形
式
,
本
文
为
演
示
方
便
给
出
的
案
例
基
本
相
同
,
都
是
是
采
用
账
号
登
录
来
演
示
数
据
存
储
,
保
存
账
号
和
密
码
信
息
,
下
次
登
录
时
记
住
账
号
和
密
码
。
重
在
说
明
各
种
存
储
形
式
的
原
理
。
文
件
存
储
文
件
存
储
:
以
I
/
O
流
的
形
式
把
数
据
存
入
手
机
内
存
或
S
D
卡
,
可
以
存
储
大
数
据
,
如
音
乐
、
图
片
或
视
频
等
。
对
于
手
机
内
存
来
说
系
统
会
根
据
每
个
应
用
的
包
名
创
建
一
个
/
d
a
t
a
/
d
a
t
a
/
包
名
/
的
文
件
夹
,
访
问
自
己
包
名
下
的
目
录
是
不
需
要
权
限
的
,
并
且
A
n
d
r
o
i
d
已
经
提
供
了
非
常
简
便
的
A
P
I
可
以
直
接
去
访
问
该
文
件
夹
。
访
问
时
可
以
用
g
e
t
F
i
l
e
s
D
i
r
(
)
和
g
e
t
C
a
c
h
e
D
i
r
(
)
,
两
个
的
区
别
是
系
统
会
自
动
清
理
后
者
中
的
内
容
。
S
D
卡
中
的
文
件
通
常
位
于
m
n
t
/
s
d
c
a
r
d
目
录
下
,
不
同
生
产
商
生
产
的
手
机
这
个
路
径
可
能
不
同
。
操
作
s
d
卡
的
时
通
常
要
判
断
下
s
d
卡
是
否
可
用
以
及
剩
余
空
间
是
否
足
够
,
因
为
部
分
手
机
的
S
D
卡
可
卸
载
,
S
D
卡
处
于
非
挂
载
状
态
时
,
无
法
进
行
读
写
操
作
。
另
外
一
点
,
对
S
D
卡
的
读
取
和
写
入
操
作
均
需
要
相
应
的
权
限
,
否
则
无
法
完
成
。
获
取
S
D
卡
路
径
的
方
法
是
E
n
v
i
r
o
n
m
e
n
t
.
g
e
t
E
x
t
e
r
n
a
l
S
t
o
r
a
g
e
D
i
r
e
c
t
o
r
y
(
)
,
其
余
操
作
与
文
件
存
储
基
本
类
似
。
文
件
存
储
位
置
:
S
D
卡
存
储
路
径
:
数
据
存
储
在
手
机
内
存
的
实
现
方
法
:
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
B
u
f
f
e
r
e
d
R
e
a
d
e
r
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
N
o
t
F
o
u
n
d
E
x
c
e
p
t
i
o
n
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
N
o
t
F
o
u
n
d
E
x
c
e
p
t
i
o
n
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
I
n
p
u
t
S
t
r
e
a
m
R
e
a
d
e
r
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
_
s
p
.
R
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
.
E
d
i
t
o
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
t
e
x
t
.
T
e
x
t
U
t
i
l
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
M
e
n
u
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
T
e
x
t
u
r
e
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
B
u
t
t
o
n
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
C
h
e
c
k
B
o
x
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
E
d
i
t
T
e
x
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
T
o
a
s
t
;
p
u
b
l
i
c
c
l
a
s
s
M
a
i
n
A
c
t
i
v
i
t
y
e
x
t
e
n
d
s
A
c
t
i
v
i
t
y
{
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
q
q
;
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
p
a
s
s
w
o
r
d
;
p
r
i
v
a
t
e
C
h
e
c
k
B
o
x
c
b
_
r
e
m
e
n
b
e
r
;
@
O
v
e
r
r
i
d
e
p
r
o
t
e
c
t
e
d
v
o
i
d
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
{
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
s
e
t
C
o
n
t
e
n
t
V
i
e
w
(
R
.
l
a
y
o
u
t
.
a
c
t
i
v
i
t
y
_
m
a
i
n
)
;
e
t
_
q
q
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
p
a
s
s
w
o
r
d
)
;
c
b
_
r
e
m
e
n
b
e
r
=
(
C
h
e
c
k
B
o
x
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
c
b
_
r
e
m
e
n
b
e
r
)
;
F
i
l
e
f
i
l
e
=
n
e
w
F
i
l
e
(
g
e
t
F
i
l
e
s
D
i
r
(
)
,
"
i
n
f
o
.
t
x
t
"
)
;
/
/
F
i
l
e
f
i
l
e
=
n
e
w
F
i
l
e
(
g
e
t
C
a
c
h
e
D
i
r
(
)
,
"
i
n
f
o
.
t
x
t
"
)
;
缓
存
中
存
放
数
据
i
f
(
f
i
l
e
.
e
x
i
s
t
s
(
)
&
&
f
i
l
e
.
l
e
n
g
t
h
(
)
>
0
)
{
t
r
y
{
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
f
i
s
=
n
e
w
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
(
f
i
l
e
)
;
B
u
f
f
e
r
e
d
R
e
a
d
e
r
b
r
=
n
e
w
B
u
f
f
e
r
e
d
R
e
a
d
e
r
(
n
e
w
I
n
p
u
t
S
t
r
e
a
m
R
e
a
d
e
r
(
f
i
s
)
)
;
S
t
r
i
n
g
l
i
n
e
=
b
r
.
r
e
a
d
L
i
n
e
(
)
;
S
t
r
i
n
g
q
q
=
l
i
n
e
.
s
p
l
i
t
(
"
#
#
"
)
[
0
]
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
l
i
n
e
.
s
p
l
i
t
(
"
#
#
"
)
[
1
]
;
e
t
_
q
q
.
s
e
t
T
e
x
t
(
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
.
s
e
t
T
e
x
t
(
p
a
s
s
w
o
r
d
)
;
f
i
s
.
c
l
o
s
e
(
)
;
}
c
a
t
c
h
(
E
x
c
e
p
t
i
o
n
e
)
{
/
/
T
O
D
O
A
u
t
o
-
g
e
n
e
r
a
t
e
d
c
a
t
c
h
b
l
o
c
k
e
.
p
r
i
n
t
S
t
a
c
k
T
r
a
c
e
(
)
;
}
}
}
p
u
b
l
i
c
v
o
i
d
l
o
g
i
n
(
V
i
e
w
v
i
e
w
)
{
S
t
r
i
n
g
q
q
=
e
t
_
q
q
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
e
t
_
p
a
s
s
w
o
r
d
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
i
f
(
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
q
q
)
|
|
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
p
a
s
s
w
o
r
d
)
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
t
h
i
s
,
"
密
码
或
者
用
户
名
不
能
为
空
"
,
0
)
.
s
h
o
w
(
)
;
r
e
t
u
r
n
;
}
数
据
存
储
在
S
D
卡
中
的
实
现
方
法
:
}
i
f
(
c
b
_
r
e
m
e
n
b
e
r
.
i
s
C
h
e
c
k
e
d
(
)
)
{
F
i
l
e
f
i
l
e
=
n
e
w
F
i
l
e
(
g
e
t
F
i
l
e
s
D
i
r
(
)
,
"
i
n
f
o
.
t
x
t
"
)
;
t
r
y
{
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
f
o
s
=
n
e
w
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
(
f
i
l
e
)
;
f
o
s
.
w
r
i
t
e
(
(
q
q
+
"
#
#
"
+
p
a
s
s
w
o
r
d
)
.
g
e
t
B
y
t
e
s
(
)
)
;
f
o
s
.
c
l
o
s
e
(
)
;
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
,
"
保
存
成
功
"
,
0
)
.
s
h
o
w
(
)
;
}
c
a
t
c
h
(
E
x
c
e
p
t
i
o
n
e
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
,
"
保
存
失
败
"
,
0
)
.
s
h
o
w
(
)
;
e
.
p
r
i
n
t
S
t
a
c
k
T
r
a
c
e
(
)
;
}
}
}
}
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
B
u
f
f
e
r
e
d
R
e
a
d
e
r
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
N
o
t
F
o
u
n
d
E
x
c
e
p
t
i
o
n
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
I
n
p
u
t
S
t
r
e
a
m
R
e
a
d
e
r
;
i
m
p
o
r
t
j
a
v
a
.
t
e
x
t
.
F
o
r
m
a
t
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
_
s
p
.
R
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
o
s
.
E
n
v
i
r
o
n
m
e
n
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
.
E
d
i
t
o
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
t
e
x
t
.
T
e
x
t
U
t
i
l
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
t
e
x
t
.
f
o
r
m
a
t
.
F
o
r
m
a
t
t
e
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
M
e
n
u
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
T
e
x
t
u
r
e
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
B
u
t
t
o
n
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
C
h
e
c
k
B
o
x
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
E
d
i
t
T
e
x
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
T
o
a
s
t
;
p
u
b
l
i
c
c
l
a
s
s
M
a
i
n
A
c
t
i
v
i
t
y
e
x
t
e
n
d
s
A
c
t
i
v
i
t
y
{
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
q
q
;
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
p
a
s
s
w
o
r
d
;
p
r
i
v
a
t
e
C
h
e
c
k
B
o
x
c
b
_
r
e
m
e
n
b
e
r
;
@
O
v
e
r
r
i
d
e
p
r
o
t
e
c
t
e
d
v
o
i
d
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
{
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
s
e
t
C
o
n
t
e
n
t
V
i
e
w
(
R
.
l
a
y
o
u
t
.
a
c
t
i
v
i
t
y
_
m
a
i
n
)
;
e
t
_
q
q
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
p
a
s
s
w
o
r
d
)
;
c
b
_
r
e
m
e
n
b
e
r
=
(
C
h
e
c
k
B
o
x
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
c
b
_
r
e
m
e
n
b
e
r
)
;
F
i
l
e
f
i
l
e
=
n
e
w
F
i
l
e
(
E
n
v
i
r
o
n
m
e
n
t
.
g
e
t
E
x
t
e
r
n
a
l
S
t
o
r
a
g
e
D
i
r
e
c
t
o
r
y
(
)
,
"
i
n
f
o
.
t
x
t
"
)
;
s
h
a
r
e
d
p
r
e
f
e
r
e
n
c
e
s
:
:
S
P
存
储
:
存
储
:
F
i
l
e
f
i
l
e
=
n
e
w
F
i
l
e
(
E
n
v
i
r
o
n
m
e
n
t
.
g
e
t
E
x
t
e
r
n
a
l
S
t
o
r
a
g
e
D
i
r
e
c
t
o
r
y
(
)
,
"
i
n
f
o
.
t
x
t
"
)
;
i
f
(
f
i
l
e
.
e
x
i
s
t
s
(
)
&
&
f
i
l
e
.
l
e
n
g
t
h
(
)
>
0
)
{
t
r
y
{
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
f
i
s
=
n
e
w
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
(
f
i
l
e
)
;
B
u
f
f
e
r
e
d
R
e
a
d
e
r
b
r
=
n
e
w
B
u
f
f
e
r
e
d
R
e
a
d
e
r
(
n
e
w
I
n
p
u
t
S
t
r
e
a
m
R
e
a
d
e
r
(
f
i
s
)
)
;
S
t
r
i
n
g
l
i
n
e
=
b
r
.
r
e
a
d
L
i
n
e
(
)
;
S
t
r
i
n
g
q
q
=
l
i
n
e
.
s
p
l
i
t
(
"
#
#
"
)
[
0
]
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
l
i
n
e
.
s
p
l
i
t
(
"
#
#
"
)
[
1
]
;
e
t
_
q
q
.
s
e
t
T
e
x
t
(
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
.
s
e
t
T
e
x
t
(
p
a
s
s
w
o
r
d
)
;
f
i
s
.
c
l
o
s
e
(
)
;
}
c
a
t
c
h
(
E
x
c
e
p
t
i
o
n
e
)
{
/
/
T
O
D
O
A
u
t
o
-
g
e
n
e
r
a
t
e
d
c
a
t
c
h
b
l
o
c
k
e
.
p
r
i
n
t
S
t
a
c
k
T
r
a
c
e
(
)
;
}
}
}
p
u
b
l
i
c
v
o
i
d
l
o
g
i
n
(
V
i
e
w
v
i
e
w
)
{
S
t
r
i
n
g
q
q
=
e
t
_
q
q
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
e
t
_
p
a
s
s
w
o
r
d
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
i
f
(
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
q
q
)
|
|
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
p
a
s
s
w
o
r
d
)
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
t
h
i
s
,
"
密
码
或
者
用
户
名
不
能
为
空
"
,
0
)
.
s
h
o
w
(
)
;
r
e
t
u
r
n
;
}
i
f
(
c
b
_
r
e
m
e
n
b
e
r
.
i
s
C
h
e
c
k
e
d
(
)
)
{
F
i
l
e
f
i
l
e
=
n
e
w
F
i
l
e
(
E
n
v
i
r
o
n
m
e
n
t
.
g
e
t
E
x
t
e
r
n
a
l
S
t
o
r
a
g
e
D
i
r
e
c
t
o
r
y
(
)
,
"
i
n
f
o
.
t
x
t
"
)
;
/
/
判
断
S
D
卡
是
否
挂
载
i
f
(
!
E
n
v
i
r
o
n
m
e
n
t
.
g
e
t
E
x
t
e
r
n
a
l
S
t
o
r
a
g
e
S
t
a
t
e
(
)
.
e
q
u
a
l
s
(
E
n
v
i
r
o
n
m
e
n
t
.
M
E
D
I
A
_
M
O
U
N
T
E
D
)
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
,
"
S
D
卡
不
可
用
"
,
0
)
.
s
h
o
w
(
)
;
r
e
t
u
r
n
;
}
/
/
判
断
S
D
卡
大
小
是
否
充
足
l
o
n
g
s
i
z
e
=
E
n
v
i
r
o
n
m
e
n
t
.
g
e
t
E
x
t
e
r
n
a
l
S
t
o
r
a
g
e
D
i
r
e
c
t
o
r
y
(
)
.
g
e
t
F
r
e
e
S
p
a
c
e
(
)
;
S
t
r
i
n
g
i
n
f
o
=
F
o
r
m
a
t
t
e
r
.
f
o
r
m
a
t
F
i
l
e
S
i
z
e
(
t
h
i
s
,
s
i
z
e
)
;
/
/
此
处
存
储
数
据
较
小
就
不
进
行
判
断
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
t
h
i
s
,
"
可
用
空
间
"
+
i
n
f
o
,
0
)
.
s
h
o
w
(
)
;
t
r
y
{
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
f
o
s
=
n
e
w
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
(
f
i
l
e
)
;
f
o
s
.
w
r
i
t
e
(
(
q
q
+
"
#
#
"
+
p
a
s
s
w
o
r
d
)
.
g
e
t
B
y
t
e
s
(
)
)
;
f
o
s
.
c
l
o
s
e
(
)
;
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
,
"
保
存
成
功
"
,
0
)
.
s
h
o
w
(
)
;
}
c
a
t
c
h
(
E
x
c
e
p
t
i
o
n
e
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
,
"
保
存
失
败
"
,
0
)
.
s
h
o
w
(
)
;
e
.
p
r
i
n
t
S
t
a
c
k
T
r
a
c
e
(
)
;
}
}
}
}
可
以
看
到
g
o
a
t
d
r
o
i
d
应
用
的
用
户
名
和
密
码
都
以
明
文
的
形
式
存
储
在
s
h
a
r
e
d
p
r
e
f
e
r
e
n
c
e
s
中
S
P
存
储
本
质
上
是
一
个
X
M
L
文
件
,
以
键
值
对
的
形
式
存
入
手
机
内
存
中
。
常
用
于
存
储
简
单
的
参
数
设
置
,
如
登
陆
账
号
密
码
的
存
储
,
窗
口
功
能
状
态
的
存
储
等
,
该
存
储
文
件
位
于
:
d
a
t
a
/
d
a
t
a
/
包
名
/
s
h
a
r
e
d
_
p
r
e
f
s
文
件
夹
中
。
使
用
的
时
候
,
首
先
需
要
通
过
c
o
n
t
e
x
t
.
g
e
t
S
h
a
r
e
d
P
r
e
f
r
e
n
c
e
s
(
S
t
r
i
n
g
n
a
m
e
,
i
n
t
m
o
d
e
)
获
取
S
h
a
r
e
d
P
r
e
f
r
e
n
c
e
s
的
实
例
对
象
,
存
储
数
据
时
,
用
S
h
a
r
e
d
P
r
e
f
r
e
n
c
e
s
的
实
例
对
象
得
到
S
h
a
r
e
d
P
r
e
f
r
e
n
c
e
s
文
件
的
编
辑
器
,
在
编
辑
器
中
用
p
u
t
X
x
x
(
)
添
加
数
据
,
之
后
务
必
用
c
o
m
m
i
t
提
交
数
据
,
否
则
无
法
获
取
数
据
。
取
数
据
时
,
直
接
用
g
e
t
X
x
x
(
)
方
法
。
s
p
存
储
自
动
生
成
x
m
l
文
件
,
其
的
路
径
如
下
:
s
p
存
储
的
实
现
方
法
:
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
_
s
p
.
R
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
.
E
d
i
t
o
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
t
e
x
t
.
T
e
x
t
U
t
i
l
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
M
e
n
u
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
T
e
x
t
u
r
e
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
B
u
t
t
o
n
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
C
h
e
c
k
B
o
x
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
E
d
i
t
T
e
x
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
T
o
a
s
t
;
p
u
b
l
i
c
c
l
a
s
s
M
a
i
n
A
c
t
i
v
i
t
y
e
x
t
e
n
d
s
A
c
t
i
v
i
t
y
{
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
q
q
;
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
p
a
s
s
w
o
r
d
;
p
r
i
v
a
t
e
C
h
e
c
k
B
o
x
c
b
_
r
e
m
e
n
b
e
r
;
p
r
i
v
a
t
e
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
s
p
;
数
据
库
存
储
:
数
据
库
存
储
:
数
据
库
所
有
信
息
都
存
储
在
单
一
文
件
内
,
占
用
内
存
小
,
并
且
支
持
基
本
S
Q
L
语
法
,
是
项
目
中
经
常
被
采
用
的
一
种
数
据
存
储
方
式
,
通
常
用
于
存
储
用
户
信
息
等
,
例
如
在
手
机
上
做
一
个
学
生
信
息
管
理
系
统
。
S
Q
L
i
t
e
是
一
款
内
置
到
移
动
设
备
上
的
轻
量
型
的
数
据
库
,
S
Q
L
i
t
e
O
p
e
n
H
e
l
p
e
r
是
A
n
d
r
o
i
d
提
供
的
一
个
抽
象
工
具
类
,
负
责
管
理
数
据
库
的
创
建
、
升
级
工
作
。
数
据
库
的
路
径
为
:
/
d
a
t
a
/
d
a
t
a
/
应
用
包
名
/
d
a
t
a
b
a
s
e
s
/
数
据
库
。
如
果
想
创
建
数
据
库
,
就
需
要
自
定
义
一
个
类
继
承
S
Q
L
i
t
e
O
p
e
n
H
e
l
p
e
r
,
然
后
覆
写
其
中
的
抽
象
方
法
,
指
定
数
据
库
名
、
版
本
号
。
在
o
n
C
r
e
a
t
e
(
)
方
法
中
通
过
执
行
s
q
l
语
句
实
现
表
的
创
建
。
如
果
只
是
创
建
出
来
该
类
并
不
会
真
正
的
去
创
建
数
据
库
,
而
是
需
要
通
过
执
行
h
e
l
p
e
r
.
g
e
t
W
r
i
t
a
b
l
e
D
a
t
a
b
a
s
e
(
)
或
者
h
e
p
l
e
r
.
g
e
t
R
e
a
d
a
b
l
e
D
a
t
a
b
a
s
e
(
)
。
另
外
想
要
对
创
建
的
数
据
库
进
行
增
删
改
查
的
操
作
可
以
单
独
定
义
一
个
类
实
现
。
增
删
改
查
操
作
有
两
种
方
式
,
一
是
直
接
执
行
s
q
l
语
句
,
另
一
个
是
A
n
d
r
o
i
d
自
身
的
A
P
I
实
现
。
用
数
据
库
实
现
账
号
登
录
显
得
有
些
大
材
小
用
,
为
演
示
数
据
库
的
原
理
本
文
给
出
的
案
例
是
用
数
据
库
记
录
多
个
用
户
的
账
号
和
密
码
信
息
,
并
把
最
后
一
个
账
号
信
息
回
显
在
界
面
。
但
实
际
应
用
中
很
少
这
样
做
。
从
手
机
文
件
中
导
出
数
据
库
文
件
并
不
可
以
直
接
打
开
,
因
此
可
以
用
可
视
化
工
具
和
s
q
l
i
t
e
3
操
作
工
具
进
行
查
看
。
这
里
介
绍
s
q
l
i
t
e
3
工
具
的
使
用
。
具
体
需
要
的
步
骤
如
下
:
1
.
执
行
a
d
b
s
h
e
l
l
命
令
进
入
L
i
n
u
x
n
e
内
核
;
2
.
使
用
c
d
进
入
数
据
库
所
在
的
路
径
c
d
:
/
d
a
t
a
/
d
a
t
a
/
应
用
包
名
/
d
a
t
a
b
a
s
e
s
;
3
.
进
入
数
据
库
模
式
:
s
q
l
i
t
e
3
数
据
库
名
.
d
b
;
4
.
执
行
S
Q
L
语
句
S
q
l
i
t
e
3
操
作
演
示
:
数
据
库
存
储
路
径
:
@
O
v
e
r
r
i
d
e
p
r
o
t
e
c
t
e
d
v
o
i
d
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
{
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
s
e
t
C
o
n
t
e
n
t
V
i
e
w
(
R
.
l
a
y
o
u
t
.
a
c
t
i
v
i
t
y
_
m
a
i
n
)
;
e
t
_
q
q
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
p
a
s
s
w
o
r
d
)
;
c
b
_
r
e
m
e
n
b
e
r
=
(
C
h
e
c
k
B
o
x
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
c
b
_
r
e
m
e
n
b
e
r
)
;
s
p
=
t
h
i
s
.
g
e
t
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
(
"
c
o
n
f
i
g
"
,
0
)
;
S
t
r
i
n
g
q
q
=
s
p
.
g
e
t
S
t
r
i
n
g
(
"
q
q
"
,
"
"
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
s
p
.
g
e
t
S
t
r
i
n
g
(
"
p
a
s
s
w
o
r
d
"
,
"
"
)
;
e
t
_
q
q
.
s
e
t
T
e
x
t
(
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
.
s
e
t
T
e
x
t
(
p
a
s
s
w
o
r
d
)
;
}
p
u
b
l
i
c
v
o
i
d
l
o
g
i
n
(
V
i
e
w
v
i
e
w
)
{
S
t
r
i
n
g
q
q
=
e
t
_
q
q
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
e
t
_
p
a
s
s
w
o
r
d
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
i
f
(
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
q
q
)
|
|
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
p
a
s
s
w
o
r
d
)
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
t
h
i
s
,
"
密
码
或
者
用
户
名
不
能
为
空
"
,
0
)
.
s
h
o
w
(
)
;
r
e
t
u
r
n
;
}
i
f
(
c
b
_
r
e
m
e
n
b
e
r
.
i
s
C
h
e
c
k
e
d
(
)
)
{
E
d
i
t
o
r
e
d
i
t
=
s
p
.
e
d
i
t
(
)
;
e
d
i
t
.
p
u
t
S
t
r
i
n
g
(
"
q
q
"
,
q
q
)
;
e
d
i
t
.
p
u
t
S
t
r
i
n
g
(
"
p
a
s
s
w
o
r
d
"
,
p
a
s
s
w
o
r
d
)
;
e
d
i
t
.
c
o
m
m
i
t
(
)
;
}
}
}
数
据
库
实
现
方
法
,
先
创
建
一
个
类
继
承
S
q
l
i
t
e
O
p
e
n
H
e
l
p
e
r
,
在
类
中
创
建
数
据
库
和
表
:
创
建
一
个
工
具
类
实
现
对
数
据
库
的
操
作
:
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
.
d
b
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
C
o
n
t
e
x
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
d
a
t
a
b
a
s
e
.
s
q
l
i
t
e
.
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
d
a
t
a
b
a
s
e
.
s
q
l
i
t
e
.
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
.
C
u
r
s
o
r
F
a
c
t
o
r
y
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
d
a
t
a
b
a
s
e
.
s
q
l
i
t
e
.
S
Q
L
i
t
e
O
p
e
n
H
e
l
p
e
r
;
p
u
b
l
i
c
c
l
a
s
s
U
s
e
r
D
B
O
p
e
n
h
e
l
p
e
r
e
x
t
e
n
d
s
S
Q
L
i
t
e
O
p
e
n
H
e
l
p
e
r
{
p
u
b
l
i
c
U
s
e
r
D
B
O
p
e
n
h
e
l
p
e
r
(
C
o
n
t
e
x
t
c
o
n
t
e
x
t
)
{
s
u
p
e
r
(
c
o
n
t
e
x
t
,
"
u
s
e
r
.
d
b
"
,
n
u
l
l
,
1
)
;
/
/
T
O
D
O
A
u
t
o
-
g
e
n
e
r
a
t
e
d
c
o
n
s
t
r
u
c
t
o
r
s
t
u
b
}
@
O
v
e
r
r
i
d
e
p
u
b
l
i
c
v
o
i
d
o
n
C
r
e
a
t
e
(
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
a
r
g
0
)
{
a
r
g
0
.
e
x
e
c
S
Q
L
(
"
c
r
e
a
t
e
t
a
b
l
e
u
s
e
r
(
_
i
d
i
n
t
e
g
e
r
p
r
i
m
a
r
y
k
e
y
a
u
t
o
i
n
c
r
e
m
e
n
t
,
n
a
m
e
v
a
c
h
a
r
(
2
0
)
,
p
a
s
s
w
o
r
d
v
a
r
c
h
a
r
(
2
0
)
)
"
)
;
}
@
O
v
e
r
r
i
d
e
p
u
b
l
i
c
v
o
i
d
o
n
U
p
g
r
a
d
e
(
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
a
r
g
0
,
i
n
t
a
r
g
1
,
i
n
t
a
r
g
2
)
{
/
/
T
O
D
O
A
u
t
o
-
g
e
n
e
r
a
t
e
d
m
e
t
h
o
d
s
t
u
b
}
}
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
.
d
b
.
d
a
o
;
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
A
r
r
a
y
L
i
s
t
;
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
L
i
s
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
C
o
n
t
e
n
t
V
a
l
u
e
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
C
o
n
t
e
x
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
d
a
t
a
b
a
s
e
.
C
u
r
s
o
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
d
a
t
a
b
a
s
e
.
s
q
l
i
t
e
.
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
.
d
b
.
U
s
e
r
D
B
O
p
e
n
h
e
l
p
e
r
;
p
u
b
l
i
c
c
l
a
s
s
U
s
e
r
D
a
o
{
p
r
i
v
a
t
e
U
s
e
r
D
B
O
p
e
n
h
e
l
p
e
r
h
e
l
p
e
r
;
p
u
b
l
i
c
U
s
e
r
D
a
o
(
C
o
n
t
e
x
t
c
o
n
t
e
x
t
)
{
h
e
l
p
e
r
=
n
e
w
U
s
e
r
D
B
O
p
e
n
h
e
l
p
e
r
(
c
o
n
t
e
x
t
)
;
}
p
u
b
l
i
c
l
o
n
g
a
d
d
(
S
t
r
i
n
g
n
a
m
e
,
S
t
r
i
n
g
p
a
s
s
w
o
r
d
)
{
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
d
b
=
h
e
l
p
e
r
.
g
e
t
W
r
i
t
a
b
l
e
D
a
t
a
b
a
s
e
(
)
;
/
/
用
S
Q
L
语
句
实
现
增
加
数
据
的
功
能
/
/
d
b
.
e
x
e
c
S
Q
L
(
"
i
n
s
e
r
t
i
n
t
o
u
s
e
r
(
n
a
m
e
,
p
a
s
s
e
o
r
d
)
v
a
l
u
e
s
(
?
,
?
)
"
,
n
e
w
O
b
j
e
c
t
[
]
{
n
a
m
e
,
p
a
s
s
w
o
r
d
}
)
;
/
/
a
n
d
r
o
i
d
自
身
A
P
I
实
现
修
改
功
能
可
以
有
返
回
值
C
o
n
t
e
n
t
V
a
l
u
e
s
v
a
l
u
e
s
=
n
e
w
C
o
n
t
e
n
t
V
a
l
u
e
s
(
)
;
v
a
l
u
e
s
.
p
u
t
(
"
n
a
m
e
"
,
n
a
m
e
)
;
v
a
l
u
e
s
.
p
u
t
(
"
p
a
s
s
w
o
r
d
"
,
p
a
s
s
w
o
r
d
)
;
l
o
n
g
r
e
s
u
l
t
=
d
b
.
i
n
s
e
r
t
(
"
u
s
e
r
"
,
n
u
l
l
,
v
a
l
u
e
s
)
;
/
/
带
返
回
值
,
表
示
添
加
在
哪
一
行
d
b
.
c
l
o
s
e
(
)
;
r
e
t
u
r
n
r
e
s
u
l
t
;
}
在
主
方
法
中
实
现
账
号
登
录
和
记
录
}
p
u
b
l
i
c
L
i
s
t
<
u
s
e
r
>
f
i
n
d
A
l
l
(
)
{
L
i
s
t
<
u
s
e
r
>
l
i
s
t
=
n
e
w
A
r
r
a
y
L
i
s
t
<
u
s
e
r
>
(
)
;
S
Q
L
i
t
e
D
a
t
a
b
a
s
e
d
b
=
h
e
l
p
e
r
.
g
e
t
R
e
a
d
a
b
l
e
D
a
t
a
b
a
s
e
(
)
;
/
/
C
u
r
s
o
r
c
u
r
s
o
r
=
d
b
.
r
a
w
Q
u
e
r
y
(
"
s
e
l
e
c
t
n
a
m
e
,
p
a
s
s
w
o
r
d
f
r
o
m
u
s
e
r
"
,
n
u
l
l
)
;
C
u
r
s
o
r
c
u
r
s
o
r
=
d
b
.
q
u
e
r
y
(
"
u
s
e
r
"
,
n
e
w
S
t
r
i
n
g
[
]
{
"
n
a
m
e
"
,
"
p
a
s
s
w
o
r
d
"
}
,
n
u
l
l
,
n
u
l
l
,
n
u
l
l
,
n
u
l
l
,
n
u
l
l
)
;
w
h
i
l
e
(
c
u
r
s
o
r
.
m
o
v
e
T
o
N
e
x
t
(
)
)
{
S
t
r
i
n
g
n
a
m
e
=
c
u
r
s
o
r
.
g
e
t
S
t
r
i
n
g
(
0
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
c
u
r
s
o
r
.
g
e
t
S
t
r
i
n
g
(
1
)
;
u
s
e
r
u
s
=
n
e
w
u
s
e
r
(
)
;
u
s
.
s
e
t
N
a
m
e
(
n
a
m
e
)
;
u
s
.
s
e
t
P
a
s
s
w
o
r
d
(
p
a
s
s
w
o
r
d
)
;
l
i
s
t
.
a
d
d
(
u
s
)
;
}
c
u
r
s
o
r
.
c
l
o
s
e
(
)
;
d
b
.
c
l
o
s
e
(
)
;
r
e
t
u
r
n
l
i
s
t
;
}
}
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
B
u
f
f
e
r
e
d
R
e
a
d
e
r
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
N
o
t
F
o
u
n
d
E
x
c
e
p
t
i
o
n
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
I
n
p
u
t
S
t
r
e
a
m
R
e
a
d
e
r
;
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
L
i
s
t
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
.
d
b
.
d
a
o
.
U
s
e
r
D
a
o
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
.
d
b
.
d
a
o
.
u
s
e
r
;
i
m
p
o
r
t
c
o
m
.
e
x
a
m
p
l
e
.
q
q
l
o
a
d
.
R
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
S
h
a
r
e
d
P
r
e
f
e
r
e
n
c
e
s
.
E
d
i
t
o
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
t
e
x
t
.
T
e
x
t
U
t
i
l
s
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
M
e
n
u
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
T
e
x
t
u
r
e
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
B
u
t
t
o
n
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
C
h
e
c
k
B
o
x
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
E
d
i
t
T
e
x
t
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
w
i
d
g
e
t
.
T
o
a
s
t
;
p
u
b
l
i
c
c
l
a
s
s
M
a
i
n
A
c
t
i
v
i
t
y
e
x
t
e
n
d
s
A
c
t
i
v
i
t
y
{
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
q
q
;
p
r
i
v
a
t
e
E
d
i
t
T
e
x
t
e
t
_
p
a
s
s
w
o
r
d
;
p
r
i
v
a
t
e
C
h
e
c
k
B
o
x
c
b
_
r
e
m
e
n
b
e
r
;
p
r
i
v
a
t
e
U
s
e
r
D
a
o
d
a
o
;
p
r
i
v
a
t
e
L
i
s
t
<
u
s
e
r
>
l
i
s
t
;
@
O
v
e
r
r
i
d
e
p
r
o
t
e
c
t
e
d
v
o
i
d
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
{
用
数
据
库
实
现
账
号
登
录
案
例
的
目
录
结
构
如
下
所
示
:
C
o
n
t
e
n
t
P
r
o
v
i
d
e
r
:
:
C
o
n
t
e
n
t
P
r
o
v
i
d
e
r
,
中
文
名
是
内
存
提
供
者
,
A
n
d
r
o
i
d
四
大
组
件
之
一
,
内
容
提
供
者
是
应
用
程
序
之
间
共
享
数
据
的
接
口
,
以
数
据
库
形
式
存
入
手
机
内
p
r
o
t
e
c
t
e
d
v
o
i
d
o
n
C
r
e
a
t
e
(
B
u
n
d
l
e
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
{
s
u
p
e
r
.
o
n
C
r
e
a
t
e
(
s
a
v
e
d
I
n
s
t
a
n
c
e
S
t
a
t
e
)
;
s
e
t
C
o
n
t
e
n
t
V
i
e
w
(
R
.
l
a
y
o
u
t
.
a
c
t
i
v
i
t
y
_
m
a
i
n
)
;
e
t
_
q
q
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
=
(
E
d
i
t
T
e
x
t
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
e
t
_
p
a
s
s
w
o
r
d
)
;
c
b
_
r
e
m
e
n
b
e
r
=
(
C
h
e
c
k
B
o
x
)
f
i
n
d
V
i
e
w
B
y
I
d
(
R
.
i
d
.
c
b
_
r
e
m
e
n
b
e
r
)
;
u
s
e
r
u
=
n
e
w
u
s
e
r
(
)
;
d
a
o
=
n
e
w
U
s
e
r
D
a
o
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
)
;
l
i
s
t
=
d
a
o
.
f
i
n
d
A
l
l
(
)
;
i
f
(
l
i
s
t
.
s
i
z
e
(
)
=
=
0
)
{
e
t
_
q
q
.
s
e
t
T
e
x
t
(
"
"
)
;
e
t
_
p
a
s
s
w
o
r
d
.
s
e
t
T
e
x
t
(
"
"
)
;
}
e
l
s
e
{
S
y
s
t
e
m
.
o
u
t
.
p
r
i
n
t
l
n
(
"
大
小
:
"
+
l
i
s
t
.
s
i
z
e
(
)
)
;
f
o
r
(
i
n
t
i
=
0
;
i
<
l
i
s
t
.
s
i
z
e
(
)
;
i
+
+
)
{
S
y
s
t
e
m
.
o
u
t
.
p
r
i
n
t
l
n
(
l
i
s
t
.
g
e
t
(
i
)
.
g
e
t
N
a
m
e
(
)
+
"
:
:
:
:
"
+
l
i
s
t
.
g
e
t
(
i
)
.
g
e
t
P
a
s
s
w
o
r
d
(
)
)
;
}
u
=
l
i
s
t
.
g
e
t
(
l
i
s
t
.
s
i
z
e
(
)
-
1
)
;
S
t
r
i
n
g
q
q
=
u
.
g
e
t
N
a
m
e
(
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
u
.
g
e
t
P
a
s
s
w
o
r
d
(
)
;
e
t
_
q
q
.
s
e
t
T
e
x
t
(
q
q
)
;
e
t
_
p
a
s
s
w
o
r
d
.
s
e
t
T
e
x
t
(
p
a
s
s
w
o
r
d
)
;
}
}
p
u
b
l
i
c
v
o
i
d
l
o
g
i
n
(
V
i
e
w
v
i
e
w
)
{
S
t
r
i
n
g
q
q
=
e
t
_
q
q
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
S
t
r
i
n
g
p
a
s
s
w
o
r
d
=
e
t
_
p
a
s
s
w
o
r
d
.
g
e
t
T
e
x
t
(
)
.
t
o
S
t
r
i
n
g
(
)
.
t
r
i
m
(
)
;
i
f
(
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
q
q
)
|
|
T
e
x
t
U
t
i
l
s
.
i
s
E
m
p
t
y
(
p
a
s
s
w
o
r
d
)
)
{
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
t
h
i
s
,
"
密
码
或
者
用
户
名
不
能
为
空
"
,
0
)
.
s
h
o
w
(
)
;
r
e
t
u
r
n
;
}
i
f
(
c
b
_
r
e
m
e
n
b
e
r
.
i
s
C
h
e
c
k
e
d
(
)
)
{
d
a
o
.
a
d
d
(
q
q
,
p
a
s
s
w
o
r
d
)
;
/
/
在
工
具
类
添
加
增
加
功
能
T
o
a
s
t
.
m
a
k
e
T
e
x
t
(
M
a
i
n
A
c
t
i
v
i
t
y
.
t
h
i
s
,
"
保
存
成
功
"
,
0
)
.
s
h
o
w
(
)
;
}
}
}
存
,
可
以
共
享
自
己
的
数
据
给
其
他
应
用
使
用
。
之
所
以
需
要
设
计
一
个
单
独
的
控
件
来
操
作
数
据
,
是
为
了
实
现
应
用
程
序
之
间
的
数
据
传
递
。
通
过
查
看
D
D
M
S
中
的
目
录
结
构
可
以
看
出
,
数
据
库
文
件
对
于
其
他
应
用
来
说
是
不
可
读
、
不
可
写
,
而
日
常
生
活
中
又
需
要
获
取
其
他
应
用
的
数
据
,
尤
其
是
系
统
自
带
软
件
的
数
据
。
比
如
打
开
Q
Q
或
者
微
信
时
会
提
示
是
否
同
步
联
系
人
,
又
比
如
备
份
短
信
的
时
候
,
这
些
都
需
要
访
问
和
操
作
其
他
应
用
的
数
据
库
。
因
此
谷
歌
工
程
师
在
底
层
软
件
中
集
成
了
大
量
的
方
法
利
用
内
存
提
供
者
的
原
理
,
类
似
于
在
数
据
库
中
提
供
一
个
对
外
访
问
的
路
径
,
供
其
他
应
用
访
问
。
为
了
更
好
的
理
解
内
存
提
供
者
的
工
作
原
理
,
可
以
自
定
义
一
个
内
容
提
示
者
来
帮
助
理
解
。
首
先
写
一
个
类
继
承
C
o
n
t
e
n
t
P
r
o
v
i
d
e
r
,
实
现
该
类
中
的
方
法
,
包
括
一
些
增
删
改
查
和
数
据
初
始
化
的
方
法
,
可
以
在
方
法
中
实
现
对
数
据
库
的
增
删
改
查
操
作
。
数
据
库
本
来
是
不
对
外
开
放
的
,
所
以
为
保
护
数
据
,
类
中
的
方
法
原
始
返
回
数
据
均
是
空
类
型
。
为
保
证
数
据
的
安
全
性
,
可
以
创
建
一
个
U
r
i
M
a
t
c
h
e
r
对
象
,
利
用
a
d
d
U
R
I
f
方
法
添
加
U
r
i
的
路
径
规
则
,
在
每
一
次
进
行
数
据
操
作
时
先
判
断
传
入
的
路
径
是
否
符
合
命
名
规
则
。
使
用
内
存
提
供
者
需
要
在
配
置
文
件
中
添
加
p
r
o
v
i
d
e
r
标
签
,
指
定
主
机
名
。
只
有
当
访
问
者
与
内
容
提
供
者
的
主
机
名
一
致
时
,
才
可
以
建
立
数
据
连
接
。
在
另
一
个
应
用
中
实
现
对
内
存
提
供
者
的
访
问
。
具
体
操
作
是
:
创
建
内
容
提
供
者
解
析
器
,
定
义
要
访
问
的
U
r
i
的
路
径
。
U
r
i
路
径
有
着
固
定
的
格
式
:
”
c
o
n
t
e
n
t
:
/
/
主
机
名
/
匹
配
字
符
”
。
利
用
内
容
提
供
者
解
析
器
进
行
增
删
改
查
,
和
要
操
作
的
数
据
库
之
间
建
立
联
系
。
以
上
内
容
通
常
用
来
理
解
内
容
提
供
者
的
工
作
原
理
,
实
际
工
作
中
很
少
用
到
自
定
义
的
内
容
提
示
者
。
实
际
中
用
的
比
较
多
的
是
用
内
容
提
供
者
操
作
系
统
联
系
人
、
系
统
短
信
等
系
统
应
用
的
数
据
库
。
内
容
提
供
者
操
作
系
统
应
用
时
相
对
简
单
,
需
要
用
到
的
大
部
分
程
序
已
经
在
底
层
实
现
,
要
做
的
是
调
用
各
种
方
法
和
相
关
的
参
数
。
需
要
关
注
的
参
数
有
U
r
i
路
径
、
数
据
库
的
表
单
结
构
。
可
以
通
过
查
看
底
层
的
代
码
获
取
相
应
的
参
数
。
其
中
有
些
常
用
的
参
数
可
以
记
下
来
,
方
便
调
用
。
比
如
获
取
全
部
短
信
的
U
r
i
路
径
是
:
c
o
n
t
e
n
t
:
/
/
s
m
s
。
与
联
系
人
有
关
的
数
据
库
表
单
有
三
个
r
a
w
_
c
o
n
t
a
c
t
s
、
d
a
t
a
、
m
i
m
e
t
y
p
e
s
。
操
作
r
a
w
_
c
o
n
t
a
c
t
s
表
的
U
r
i
是
:
c
o
n
t
e
n
t
:
/
/
c
o
m
.
a
n
d
r
o
i
d
.
c
o
n
t
a
c
t
s
/
r
a
w
_
c
o
n
t
a
c
t
s
,
操
作
d
a
t
a
表
的
U
r
i
是
:
c
o
n
t
e
n
t
:
/
/
c
o
m
.
a
n
d
r
o
i
d
.
c
o
n
t
a
c
t
s
/
d
a
t
a
。
本
文
以
短
信
的
备
份
、
还
原
来
演
示
利
用
内
容
提
供
者
访
问
短
信
数
据
库
。
先
看
一
下
短
信
和
手
机
联
系
人
有
关
的
数
据
库
所
在
的
路
径
。
短
信
在
A
n
d
r
o
i
d
模
拟
器
下
存
放
在
的
路
径
是
:
/
d
a
t
a
/
d
a
t
a
/
c
o
m
.
a
n
d
r
o
i
d
.
p
r
o
v
i
d
e
r
s
.
t
e
l
e
p
h
o
n
y
/
d
a
t
a
b
a
s
e
s
/
目
录
,
联
系
人
在
A
n
d
r
o
i
d
模
拟
器
下
存
放
在
的
路
径
是
:
/
d
a
t
a
/
d
a
t
a
/
c
o
m
.
a
n
d
r
o
i
d
.
p
r
o
v
i
d
e
r
s
.
c
o
n
t
a
c
t
s
/
d
a
t
a
b
a
s
e
s
/
目
录
。
对
于
短
信
数
据
库
我
们
关
心
的
表
数
据
有
:
a
d
d
r
e
s
s
、
t
y
p
e
、
b
o
d
y
、
d
a
t
e
,
分
别
表
示
发
送
者
号
码
、
短
信
类
型
(
收
还
是
发
)
、
短
信
内
容
、
日
期
。
对
于
联
系
人
数
据
库
的
三
张
表
一
定
要
按
照
一
定
的
顺
序
依
次
查
找
才
能
得
到
相
关
的
数
据
,
在
这
不
做
解
释
。
尽
管
开
发
的
时
候
不
需
要
了
解
短
信
和
手
机
联
系
人
的
数
据
库
路
径
,
但
是
要
明
白
短
信
和
手
机
联
系
人
的
数
据
是
存
在
数
据
库
中
的
,
同
时
数
据
库
对
外
是
不
开
放
的
。
与
短
信
有
关
的
数
据
库
的
目
录
结
构
:
本
文
给
出
的
案
例
是
短
信
的
备
份
和
还
原
,
从
而
实
现
对
系
统
应
用
数
据
库
的
操
作
。
首
先
利
用
内
容
提
供
者
查
询
到
短
信
数
据
库
里
的
详
细
参
数
,
将
该
数
据
以
X
m
l
文
件
的
形
式
存
入
到
指
定
的
文
件
夹
。
利
用
x
m
l
解
析
得
到
数
据
,
将
获
取
的
数
据
存
在
一
个
工
具
类
中
,
这
样
就
能
用
L
i
s
t
V
i
e
w
将
数
据
显
示
在
界
面
上
。
具
体
实
现
如
下
。
p
a
c
k
a
g
e
c
o
m
.
e
x
a
m
p
l
e
.
c
o
n
t
e
n
t
p
r
o
v
i
d
e
r
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
I
n
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
i
o
.
F
i
l
e
O
u
t
p
u
t
S
t
r
e
a
m
;
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
A
r
r
a
y
L
i
s
t
;
i
m
p
o
r
t
j
a
v
a
.
u
t
i
l
.
L
i
s
t
;
i
m
p
o
r
t
o
r
g
.
x
m
l
p
u
l
l
.
v
1
.
X
m
l
P
u
l
l
P
a
r
s
e
r
;
i
m
p
o
r
t
o
r
g
.
x
m
l
p
u
l
l
.
v
1
.
X
m
l
S
e
r
i
a
l
i
z
e
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
a
p
p
.
A
c
t
i
v
i
t
y
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
c
o
n
t
e
n
t
.
C
o
n
t
e
n
t
R
e
s
o
l
v
e
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
d
a
t
a
b
a
s
e
.
C
u
r
s
o
r
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
n
e
t
.
U
r
i
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
o
s
.
B
u
n
d
l
e
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
u
t
i
l
.
L
o
g
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
u
t
i
l
.
X
m
l
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
;
i
m
p
o
r
t
a
n
d
r
o
i
d
.
v
i
e
w
.
V
i
e
w
G
r
o
u
p
;
回复
举报
上一个主题
下一个主题
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
!disable!!post_parseurl!
使用Markdown编辑器编辑
使用富文本编辑器编辑
回帖后跳转到最后一页