《飞鸟集》泰戈尔
目前成都创新互联已为数千家的企业提供了网站建设、域名、虚拟空间、网站运营、企业网站设计、新建网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
1
夏天的飞鸟,飞到我的窗前唱歌,又飞去了。
秋天的黄叶,它们没有什么可唱,只叹息一声,飞落在那里。
Stray birds of summer come to my window to sing and fly away.
And yellow leaves of autumn, which have no songs, flutter and fall
there with a sign.
2
世界上的一队小小的漂泊者呀,请留下你们的足印在我的文字里。
O Troupe of little vagrants of the world, leave your footprints in my words.
3
世界对着它的爱人,把它浩翰的面具揭下了。
它变小了,小如一首歌,小如一回永恒的接吻。
The world puts off its mask of vastness to its lover.
It becomes small as one song, as one kiss of the eternal.
4
是大地的泪点,使她的微笑保持着青春不谢。
It is the tears of the earth that keep here smiles in bloom.
5
无垠的沙漠热烈追求一叶绿草的爱,她摇摇头笑着飞开了。
The mighty desert is burning for the love of a bladeof grass who
shakes her head and laughs and flies away.
6
如果你因失去了太阳而流泪,那么你也将失去群星了。
If you shed tears when you miss the sun, you also miss the stars.
7
跳舞着的流水呀,在你途中的泥沙,要求你的歌声,你的流动呢。你肯挟
瘸足的泥沙而俱下么?
The sands in your way beg for your song and your movement, dancing
water. Will you carry the burden of their lameness?
8
她的热切的脸,如夜雨似的,搅扰着我的梦魂。
Her wishful face haunts my dreams like the rain at night.
9
有一次,我们梦见大家都是不相识的。
我们醒了,却知道我们原是相亲相爱的。
Once we dreamt that we were strangers.
We wake up to find that we were dear to each other.
10
忧思在我的心里平静下去,正如暮色降临在寂静的山林中。
Sorrow is hushed into peace in my heart like the evening among
the silent trees.
11
有些看不见的手,如懒懒的微(风思)的,正在我的心上奏着
潺(氵爰)的乐声。
Some unseen fingers, like an idle breeze, are playing upon my heart
the music of the ripples.
12
“海水呀,你说的是什么?”
“是永恒的疑问。”
“天空呀,你回答的话是什么?”
“是永恒的沉默。”
What language is thine, O sea?
The language of eternal question.
What language is thy answer, O sky?
The language of eternal silence.
13
静静地听,我的心呀,听那世界的低语,这是它对你求爱的表示呀。
Listen, my heart, to the whispers of the world with which it makes
love to you.
14
创造的神秘,有如夜间的黑暗--是伟大的。而知识的幻影却不过如晨间
之雾。
The mystery of creation is like the darkness of night--it is great.
Delusions of knowledge are like the fog of the morning.
15
不要因为峭壁是高的,便让你的爱情坐在峭壁上。
Do not seat your love upon a precipice because it is high.
16
我今晨坐在窗前,世界如一个路人似的,停留了一会,向我点点头又走过
去了。
I sit at my window this morning where the world like a passer-by stops
for a moment, nods to me and goes.
17
这些微(风思),是树叶的簌簌之声呀;它们在我的心里欢悦地微语着。
There little thoughts are the rustle of leaves; they have their
whisper of joy in my mind.
18
你看不见你自己,你所看见的只是你的影子。
What you are you do not see, what you see is your shadow.
19
神呀,我的那些愿望真是愚傻呀,它们杂在你的歌声中喧叫着呢。
让我只是静听着吧。
My wishes are fools, they shout across thy song, my Master.
Let me but listen.
20
我不能选择那最好的。
是那最好的选择我。
I cannot choose the best.
The best chooses me.
21
那些把灯背在背上的人,把他们的影子投到了自己前面。
They throw their shadows before them who carry their lantern on
their back.
22
我的存在,对我是一个永久的神奇,这就是生活。
That I exist is a perpetual surprise which is life.
23
“我们萧萧的树叶都有声响回答那风和雨。你是谁呢,那样的沉默着?”
“我不过是一朵花。”
We, the rustling leaves, have a voice that answers the storms,
but who are you so silent?"
I am a mere flower.
24
休息与工作的关系,正如眼睑与眼睛的关系。
Rest belongs to the work as the eyelids to the eyes.
25
人是一个初生的孩子,他的力量,就是生长的力量。
Man is a born child, his power is the power of growth.
26
神希望我们酬答他,在于他送给我们的花朵,而不在于太阳和土地。
God expects answers for the flowers he sends us, not for the sun
the earth.
27
光明如一个裸体的孩子,快快活活地在绿叶当中游戏,它不知道人是会欺
诈的。
The light that plays, like a naked child, among the green leaves
happily knows not that man can lie.
28
啊,美呀,在爱中找你自己吧,不要到你镜子的谄谀去找寻。
O Beauty, find thyself in love, not in the flattery of thy mirror.
29
我的心把她的波浪在世界的海岸上冲激着,以热泪在上边写着她的题记:
“我爱你。”
My heart beats her waves at the shore of the world and writes upon
it her signature in tears with the words, "I love thee."
30
“月儿呀,你在等候什么呢?”
“向我将让位给他的太阳致敬。”
Moon, for what do you wait?
To salute the sun for whom I must make way.
31
绿树长到了我的窗前,仿佛是喑哑的大地发出的渴望的声音。
The trees come up to my window like the yearning voice of the dumb earth.
32
神自己的清晨,在他自己看来也是新奇的。
His own mornings are new surprises to God.
33
生命从世界得到资产,爱情使它得到价值。
Life finds its wealth by the claims of the world, and its worth
by the claims of love.
34
枯竭的河床,并不感谢它的过去。
The dry river-bed finds no thanks for its past.
35
鸟儿愿为一朵云。
云儿愿为一只鸟。
The bird wishes it were a cloud.
The cloud wishes it were a bird.
36
瀑布歌唱道:“我得到自由时便有了歌声了。”
The waterfall sing, "I find my song, when I find my freedom."
37
我说不出这心为什么那样默默地颓丧着。
是为了它那不曾要求,不曾知道,不曾记得的小小的需要。
I cannot tell why this heart languishes in silence.
It is for small needs it never asks, or knows or remembers.
38
妇人,你在料理家务的时候,你的手足歌唱着,正如山间的溪水歌唱着在
小石中流过。
Woman, when you move about in your household service your limbs sing
like a hill stream among its pebbles.
39
当太阳横过西方的海面时,对着东方留下他的最后的敬礼。
The sun goes to cross the Western sea, leaving its last salutation
to the East.
40
不要因为你自己没有胃口而去责备你的食物。
Do not blame your food because you have no appetite.
41
群树如表示大地的愿望似的,踮起脚来向天空窥望。
The trees, like the longings of the earth, stand atiptoe to peep
at the heaven.
42
你微微地笑着,不同我说什么话。而我觉得,为了这个,我已等待得久了。
You smiled and talked to me of nothing and I felt that for this
I had been waiting long.
43
水里的游鱼是沉默的,陆地上的兽类是喧闹的,空中的飞鸟是歌唱着的。
但是,人类却兼有海里的沉默,地上的喧闹与空中的音乐。
The fish in the water is silent, the animal on the earth is noisy,
the bird in the air is singing.
But Man has in him the silence of the sea, the noise of the earth and
the music of the air.
44
世界在踌躇之心的琴弦上跑过去,奏出忧郁的乐声。
The world rushes on over the strings of the lingering heart making
the music of sadness.
45
他把他的刀剑当作他的上帝。
当他的刀剑胜利的时候他自己却失败了。
He has made his weapons his gods.
When his weapons win he is defeated himself.
46
神从创造中找到他自己。
God finds himself by creating.
47
阴影戴上她的面幕,秘密地,温顺地,用她的沉默的爱的脚步,跟在“光”
后边。
Shadow, with her veil drawn, follows Light in secret meekness,
with her silent steps of love.
48
群星不怕显得象萤火那样。
The stars are not afraid to appear like fireflies.
49
谢谢神,我不是一个权力的轮子,而是被压在这轮子下的活人之一。
I thank thee that I am none of the wheels of power but I am one with
the living creatures that are crushed by it.
50
心是尖锐的,不是宽博的,它执着在每一点上,却并不活动。
The mind, sharp but not broad, sticks at every point but does not move.
51
你的偶像委散在尘土中了,这可证明神的尘土比你的偶像还伟大。
You idol is shattered in the dust to prove that God's dust is greater
than your idol.
52
人不能在他的历史中表现出他自己,他在历史中奋斗着露出头角。
Man does not reveal himself in his history, he struggles up through it.
53
玻璃灯因为瓦灯叫它做表兄而责备瓦灯。但明月出来时,玻璃
灯却温和地微笑着,叫明月为---“我亲爱的,亲爱的姐姐。”
While the glass lamp rebukes the earthen for calling it cousin the
moon rises, and the glass lamp, with a bland smile, calls her,
---My dear, dear sister.
54
我们如海鸥之与波涛相遇似地,遇见了,走近了。海鸥飞去,波涛滚滚地流
开,我们也分别了。
Like the meeting of the seagulls and the waves we meet and come near.
The seagulls fly off, the waves roll away and we depart.
55
我的白昼已经完了,我象一只泊在海滩上的小船,谛听着晚潮跳舞的
乐声。
My day is done, and I am like a boat drawn on the beach, listening to
the dance-music of the tide in the evening.
56
我们的生命是天赋的,我们惟有献出生命,才能得到生命。
Life is given to us, we earn it by giving it.
57
当我们是大为谦卑的时候,便是我们最接近伟大的时候。
We come nearest to the great when we are great in humility.
58
麻雀看见孔雀负担着它的翎尾,替它担忧。
The sparrow is sorry for the peacock at the burden of its tail.
59
决不要害怕刹那--永恒之声这样唱着。
Never be afraid of the moments--thus sings the voice of the everlasting.
60
风于无路之中寻求最短之路,又突然地在“无何有之国”终之了它的追求。
The hurricane seeks the shortest road by the no-road, and suddenly ends
its search in the Nowhere.
61
在我自己的杯中,饮了我的酒吧,朋友。
一倒在别人的杯里,这酒的腾跳的泡沫便要消失了。
Take my wine in my own cup, friend.
It loses its wreath of foam when poured into that of others.
62
“完全”为了对“不全”的爱,把自己装饰得美丽。
The perfect decks itself in beauty for the love of the Imperfect.
63
神对人说:“我医治你所以伤害你,爱你所以惩罚你。”
God says to man, "I heal you therefore I hurt, love you therefore punish."
64
谢谢火焰给你光明,但是不要忘了那执灯的人,他是坚忍地站在黑暗当中呢。
Thank the flame for its light, but do not forget the lampholder
standing in the shade with constancy of patience.
65
小草呀,你的足步虽小,但是你拥有你足下的土地。
Tiny grass, your steps are small, but you possess the earth under
your tread.
66
幼花的蓓蕾开放了,它叫道:“亲爱的世界呀,请不要萎谢了。”
The infant flower opens its bud and cries, "Dear World, please do not
fade."
67
神对于那些大帝国会感到厌恶,却决不会厌恶那些小小的花朵。
God grows weary of great kingdoms, but never of little flowers.
68
错误经不起失败,但是真理却不怕失败。
Wrong cannot afford defeat but Right can.
69
瀑布歌唱道:“虽然渴者只要少许的水便够了,我却很快活地给与了我的全
部的水。
I give my whole water in joy,
it is enough for the thirsty.
70
把那些花朵抛掷上去的那一阵子无休无止的狂欢大喜的劲儿,其源泉是在哪
里呢?
Where is the fountain that throws up these flowers in a ceaseless
outbreak of ecstasy?
71
樵夫的斧头,问树要斧柄。
树便给了他。
The woodcutter's axe begged for its handle from the tree.
The tree gave it.
72
这寡独的黄昏,幕着雾与雨,我在我的心的孤寂里,感觉到它的叹息。
In my solitude of heart I feel the sigh of this widowed evening veiled
with mist and rain.
73
贞操是从丰富的爱情中生出来的财富。
Chastity is a wealth that comes from abundance of love.
74
雾,象爱情一样,在山峰的心上游戏,生出种种美丽的变幻。
The mist, like love, plays upon the heart of the hills and bring out
surprises of beauty.
75
我们把世界看错了,反说它欺骗我们。
We read the world wrong and say that it deceives us.
76
诗人--飙风,正出经海洋森林,追求它自己的歌声。
The poet wind is out over the sea and the forest to seek his own voice.
77
每一个孩子出生时都带来信息说:神对人并未灰心失望。
Every child comes with the message that God is not yet discouraged of man.
78
绿草求她地上的伴侣。
树木求他天空的寂寞。
The grass seeks her crowd in the earth.
The tree seeks his solitude of the sky.
79
人对他自己建筑起堤防来。
Man barricades against himself.
80
我的朋友,你的语声飘荡在我的心里,象那海水的低吟声绕缭
在静听着的松林之间。
Your voice, my friend, wanders in my heart, like the muffled sound
of the sea among these listening pines.
基于flutter版本1.9.1,低版本区别对待。
lib目录,libflutter.so文件,三个目录armeabi-v7a,x86_64和x86,支持arm平台32和x86的32和64。
asset目录,新增flutter_asset目录,三个文件,dart产物。
lib目录,libflutter.so文件,两个目录armeabi-v7,arm64-v8a,支持arm平台32和64。
asset目录,新增flutter_asset目录。
在release模式,libapp.so替代flutter老版本的一些dart产物,如下。
flutter命令打包生成产物,flutter命令脚本会调用dart命令。
dart的编译模式:
kernel snapshot 模式,开发阶段,isolate_snapshot_data,vm_snapshot_data,kernel_blob_bin是业务数据。
core jit,
生产阶段,dart的一种二进制模式,这是一种aot模式,vm和isolate。
任重而道远
新建一个Flutter工程,android模块。
1,只有一个Activity组件,它是Dart层绘制Widget的容器。
2,Application配置FlutterApplication。
应用Application配置io.flutter.app.FlutterApplication类,App首次启动时,初始化。
调用FlutterMain.startInitialization()方法。
initConfig方法,从AndroidManfest.xml配置的applicaion节点获取meta-data数据,初始化以下默认值。
这些值都是使用中用到的name,例如,抽取apk中asset资源时,flutter_assets打包目录,打包产物data名称。
initResources方法, 初始化资源。
在Flutter打包apk的asset目录下,包括fluttter_asset目录/资源项,将资源从apk中抽取,保存在 Context.getDir("flutter", 0) 目录下。
/data/user/0/包名/app_flutter目录。
在目录中创建一个时间戳文件,根据apk版本和包信息记录的lastUpdateTime更新时间,第二次启动时,若apk未更新,不需要再次抽取。
加载so库,libflutter.so,System.loadLibrary()。
主页面继承FlutterActivity,配置启动模式singleTop。
FlutterActivity类在io.flutter.app包, (区别io.flutter.embedding.android包), 组件生命周期委托给FlutterActivityDelegate类。
组件启动,onCreate方法。
FlutterMain.ensureInitializationComplete方法,确保资源成功抽取完成,创建FlutterView视图(io.flutter.view),继承SurfaceView类,setContentView方法,设置组件主布局即FlutterView视图。
最后,根据Bundle路径,runBundle()加载运行,
调用FlutterView的runFromBundle方法,入口点在dart的main方法,
通过FlutterNativeView,调用FlutterJNI的native方法。
nativeRunBundleAndSnapshotFromLibrary方法。
任重而道远
Flutter可以算是当下最火热的新技术之一,我现在所在团队也准备将Flutter技术应用到线上工程中。
关于混合工程,官方文档其实写的已经比较清楚了,按着文档走一般问题不大,
但是有一点值得注意的是,Flutter工程引入的库的gradle的 buildTypes 要与原工程保持一致,如果不一致需要手工添加。
进入正题,现在Flutter官方默认只提供armeabi-v7a、arm64-v8a、x86和x86-64,其中x86和x86-64是为模拟器准备的。目前我们使用的SDK大部分只使用了armeabi架构,直接使用我们会遇见找不到 libflutter.so,libapp.so 的情况,所以我们需要对FlutterSDK做一定的改造。
首先我们要了解下Flutter编译产物,因为不同版本产物是不同的,这里我们只针对Flutter 1.9.1-hotfixes来说。除了资源文件之外,Flutter打包会生成两个非常重要的so库,他们分别是 libflutter.so,libapp.so 。其中 libflutter.so 是Flutter的SDK产物而 libapp.so 正是我们编写的dart文件的产物。默认情况下,这两个文件都会出现在armeabi-v7a中,因此我们要作出对应的改造。
libflutter.so 位于FlutterSDK中,这里顺带提一句,除了这对不同CPU架构,它还分为Debug版和Release版,它们的区别在于Debug是为JIT编译方式打造的,体积较大而Release是为AOT编译方式打造的,体积很小。对 libflutter.so 的改造,只要将其移动文件路径即可,运行以下脚本即可,此脚本来自美团分享的Flutter文章。
移动完了 libflutter.so 之后我们打包发现, libapp.so 仍然会出现在armeabi-v7a中,所以第二部我们就是移动 libapp.so 。这个需要更改 flutter.gradle ,我们在 flutter.gradle 的45行可以看到如下定义,它定义了我们的环境。
在524行我们可以看到,abiValue的取值就是根据上述定义值。
所以结论很简单,只要将
private static final String ARCH_ARM32 = "armeabi-v7a";
改为
private static final String ARCH_ARM32 = "armeabi";
就可以完成对与 libflutter.so 的移动。
前期工作我们都做好了,打成aar就非常简单了
直接使用 flutter build aar --target-platform android-arm
打出来后可以解压检查下 libflutter.so,libapp.so 是否都在armeabi文件夹下即可。
说完了armeabi适配问题,这里下说下有关于有关于FlutterBoost的接入。这个东西接入有两点要注意。
在主app内加上即可,常规操作,强制统一support包的版本号
注释flutter.gradle第655行。因为编译过程中,会去初始化插件项目的buildType下面的debug配置,而插件项目下并未配置debug,导致报错。
如果发现文章中有错误或者有更好的解决方案欢迎指正留言,当然如果本篇文章帮助你解决了问题,也不要吝啬你的感谢。谢谢各位。