精华内容
下载资源
问答
  • android开发语言Kotlin的入手Demo

    千次阅读 2017-06-05 16:11:50
    google的发布大会确认了Kotlin为新的android开发语言,对于开发者意味着什么呢? 个人觉得这只是为android开发提供了一个新的选择,毕竟还有其他语言一样可以用于android开发,只是没有得到google的官方认同罢了...
    google的发布大会确认了Kotlin为新的android开发语言,对于开发者意味着什么呢?
    个人觉得这只是为android开发提供了一个新的选择,毕竟还有其他语言一样可以用于android开发,只是没有得到google的官方认同罢了。
    当然Kotlin相对其他语言还是有很大的优势,安全,简洁,简单,而且还可以和Java共同开发android。
    不过作为开发者,我个人觉得若是能力不是那么好,或者学习能力不够的话,还是先把Java搞好,懂多门语言,不如精一门,而且Kotlin真正用于实际项目的还并不是那么多,坑还需要踩。
    至于说Kotlin取代JAVA,有点远,真到了那个时候还在做没做开发都还不一定呢。
    不过既然Kotlin被官方认证,那么他肯定也有他独特的地方,作为开发者,了解一下还是有必要的。
    下面就讲讲我开始接触到的Kotlin吧。
    准备工作当然要做好,google是准备在android studio 3.0,正式推出Kotlin,那么现在我们要用Kotlin就必须安装插件了。打开android studio>File>Settings>Plugins>Browse Repositoies 搜索Kotlin,点击install然后等待,安装成功restart android studio。 新建项目,配置gradle
    在project的gradle dependencies里面添加
    然后在app的gradle里面添加
    点击Sync now就OK了,准备工作已好,开干。
    新建Kotlin class orKotlin activity
    布局还是可以用xml,当然Kotlin还可以用代码去写布局,那个我还没有弄,你们可以试试,挺好玩的
    看代码MainActivity
    可以看到简洁了很多有没有,控件不需要去findById,也去掉了冒号,还不用担心mData为空,
    Button的事件中也少写了很多。阅读感也好了很多。
    RecyclerAdapter
    构造方法直接就放在类名后面了。其他的就没有什么好的亮点了。
    ViewHolder
    就这样一个Demo就搞定了,Kotlin还是挺好用的,语意简单明了,不过要深入的话,肯定还要继续学习。跑出来的效果
    Kotlin提供了一个可以把Java自动转化成kotlin的 快捷键ctrl+alt+ shiflt +k。建议还是自己写,必须动了手,才能算是自己写的。
    关注,收藏,点赞,都是极好的。
    展开全文
  • Android为什么选择Java作为开发语言

    万次阅读 多人点赞 2017-01-16 17:40:55
    Android系统基于Linux,内核和驱动都是使用C/C++语言做开发,为什么又设计一个 Dalvik JVM,然后在SDK 层面选择Java作为开发语言? 首先我们需要选用一个语言来开发本地App。 那么,我们第一步干啥了。 在现有...
    Android系统基于Linux,内核和驱动都是使用C/C++语言做开发,为什么又设计一个 Dalvik JVM,然后在SDK 层面选择Java作为开发语言?

    首先我们需要选用一个语言来开发本地App。
    那么,我们第一步干啥了。
    在现有的语言中挑选语言。

    那么首先考虑的条件是不火的语言和没前途的语言是不在选择范围的。
    ---因为没人用,那么库就会少。因为库少就不会好用。因为不好用。所以用的人更少。生态圈的核心思想。
    --那这个世界是不是只有C++/Java了。肯定不是。因为有些语言是有前途的。最大的特点是。简化了程序员的负担。或者效率更高。未来肯定是主流。

    那么我们常用的语言和有前景的语言是哪些
    C/C++/Java/C#/Python/Ruby/Go/JavaScript+Html

    好。这些是我们常用的语言。我们看待的是怎么把这些语言一步步的踢掉。然后只剩下Java的。

    首先踢掉的是C。至今大型的超过10万行代码的图形化界面程序没有几个是用C的。因为复杂的错误处理和没有纠错机制。使得程序非常容易崩溃。同时。因为C没有面向对象。那么工程化开发显得非常麻烦。
    相信没有人现在主动说。用C开发App这种多界面程序吧。

    继续踢掉的是C#。我干嘛要用一个一出生就为了对付Java的。还是微软的私货的语言。对。Android是开源界的。而C#注定不是适合开源界的语言。

    那我们继续踢语言:

    我们该要一门重语言还是轻语言?

    Java/C++/C#/Go/C是重语言。
    Python/Ruby/JavaScript+Html/是轻语言。

    对。我心目中划分语言的标准基本上是属于这样的,只要在代码中体现我们需要讲效率的。那就是重语言。
    重语言首先讲究的是运行效率。然后讲究工程化。
    轻语言讲究开发效率,讲究敏捷性开发。

    回到我们选语言的原则。
    我们想开发一款本地App。还在性能不高的手机上。
    那么除了C之外的开发语言中。运行效率最高的是C++,然后是Java。

    那么轻型语言就要被一个个踢掉了。
    Ruby在网页端有作为。但是库太少。图形库更少,开发者都是网页端的人。被踢。
    JavaScript+Html - ----> 这是未来大一统的趋势。但是我们现在是找一门开发本地App的语言。
    外加真心html+JavaScript有着先天的劣势。(效率+Offline)
    Python有着完善的库。有着极高的人气社区。在手机上开发也有过尝试。(Nokia就干过这事。Ubuntu Phone的UML也是一种类python的语言。)Google也是python的大用户。效率是问题。但是不是绝对的。先对Python实现保留意见。

    那么我们看这一轮入围的四门语言
    Java/C++/Python/Go

    再说Go。Go语言还不成熟。库也不多。开发者少。但是作为Google主打的语言。很有可能。Google会提供基于Go的Android sdk。至少现在Android的主打语言不会是Go。

    剩下三门
    C++/Python/Java
    C++重运行效率。但是跨平台性较弱。开发难度较高。库多,用的人多。
    Python,重开发效率。跨平台性高。开发难度低,库多,用的人多。
    Java。重开发效率。不及python,重运行效率,不及C++。开发难度低。库多。用的人多。

    那再回到需求:
    Google是想要一门开发本地App的语言。Google想屏蔽掉底层硬件的差异。实现对于开发者来说是一个统一的平台。
    同时。对于手机这个现阶段的平台来说。耗电,以及性能。是无法回避的问题。

    那么这门语言的跨平台性要求很高。同时效率又很高。

    说Python:效率实在无法达到其普遍的手机要求。尤其是对于图像处理这种高计算操作。且。社区无法与C++/Java相比。意味着库没有Java和C++多,开发者不是跟Java和C++一个等级的。

    说C++:用过JNI的人都知道本地的C/C++库,至少要编译多次。不同的框架就代表者不同的编译环境。而且直接用C++编译运行的话。C++并不能很好的屏蔽掉硬件差异。所以对于开发来说调试来说,都是一个比较艰巨的任务。
    C++也不是一个非常好的工程化开发语言。
    那有没有破解法。Qt。可以用框架屏蔽掉大部分的细节操作。Qt5.0支持Android。
    为什么没用。估摸着是跟Qt不是Google家的产品加不开源的问题吧。

    说Java:虚拟机是核心。因为虚拟机真正能屏蔽掉开发的很多差异。而且通过虚拟机。开发者只要在打包的时候翻译成运行码而不需要翻译成机器码。通过虚拟机完成很多差异的解决。而效率并不是丢的非常严重。
    且Java比C++更受开源界和工业界的共同欢迎。即使Java也有版权问题。。。

    我们屏蔽掉最基础的硬件差异。通过Linux,在屏蔽掉手机的一些基本功能差异。然后提供纯粹的利于开发者开发和测试的方法。只有通过虚拟机了。而这个虚拟机是需要讲性能的。
    Google搞了一个Davlik虚拟机。对。这就是Android的核心。就是因为性能要求高。不得不重新开发虚拟机。Davlik就是一个非常讲效率的虚拟机。而其他的常用库都有的,现成的。根本就不需要自己去写的。只要打包就好。
    那么还有些必须考效率的库和应用。怎么办。
    用JNI技术调用C++
    对就这么坑爹。


    为什么Object-C这门语言无视我说的大部分要求了。因为Apple有能力创造一门更好的语言。Google对于Android,只是在开源社区挑一门语言。
    且。ObjectC生在Apple,死在Apple。兼容性。人家才不需要考虑。所以人家敢用Object-C,而Android为了实现真正的跨平台。只能选Java。
    展开全文
  • 如何看待 Kotlin 成为 Android 官方支持开发语言

    万次阅读 多人点赞 2017-05-21 21:34:49
    Google IO 2017宣布了 Kotlin 会成为 Android 官方开发语言。一时间朋友圈和Android圈被各种刷屏。当然我也顺势而为发布了一篇的文章《为什么我要改用Kotlin》,着实狠狠地蹭了一波热度(尽管这样会被鄙视)。眼下...

    Google IO 2017宣布了 Kotlin 会成为 Android 官方开发语言。一时间朋友圈和Android圈被各种刷屏。当然我也顺势而为发布了一篇的文章《为什么我要改用Kotlin》,着实狠狠地蹭了一波热度(尽管这样会被鄙视)。眼下Android圈已经躁动了,甚至严重到如果对Kotlin视而不见就显得自己不像一个合格的Android程序员。

    本文尝试从一个客观全面一点儿的角度来看待这件事情,尽力为大家提供一个比较理性的观点供参考。

    为什么会选用Kotlin

    关于 Google 为什么会选择 Kotlin,我认为有两方面的原因。

    1. 为了逐渐摆脱专利流氓Oracle。从去年的转向OpenJDK,到现在的支持Kotlin作为官方语言,某种意义是为了摆脱藉由9行代码敲诈获取天价赔偿的Oracle。

    2. 选用Kotlin,实至名归,这个荣誉它值得拥有。Kotlin确实以其实用,高效赢得了海外很多公司和开发者的认可,比如Square的Jake大神一直在推Kotlin。Kotlin在国外至少有将近2年的应用生产环境的实践(非JetBrains内部实践应用)。在移动开发中,相比iOS程序员,Android程序员总是很幸运,因为我们有很多优秀好用的工具(Android Studio等),选用Kotlin,则是Google 为开发者提供高效的开发工具的一贯作风。

    成为 Android官方开发语言意味着什么

    • 官方:工具支持(Android Studio 3.0附带Kotlin),官方的宣传(教学视频,主题演讲等)
    • 对于社区来说,Kotlin版本的库和框架如雨后春笋般涌现
    • 对于Java,曾经借助Android这场春风,着实让迟暮的它再度辉煌,现在和将来在Android领域可谓是棋逢敌手,Java的在Android开发语言市场份额会降。但是这也并不一定是坏事,有竞争才能更好进步。
    • 对于Android 开发者,我们多了一种开发Android的语言选择,那些对于之前由于前景不明朗却对Kotlin跃跃欲试的人可以放心使用了。有了Kotlin意味着开发效率应该会有所提升。
    • 对于团队,这往往带来了一个选择的问题,Use Kotlin or not, That’s a question. 团队中总有人想要尝试Kotlin,而另一些人则兴致不那么高。由于历史包袱,团队成员兴趣,对于已有项目采用Kotlin和Java长期并存是实际可行的方案。而新项目则应该鼓励使用Kotlin,但具体还需要结合团队的能力和其他因素。

    Kotlin的魅力究竟在哪里

    Kotlin的有很多特点,比如简洁,安全实用,开发效率高和提升可读性,更好的函数式编程支持。

    1.简洁,Kotlin的代码确实比Java更加简洁,比如类型推断,省去结尾的分号等等,然而这远不能成为我们改用Kotlin的原因。

    2.安全,这是Kotlin的一个很重要的特性。Kotlin是空指针安全的,JetBrains做了一件很聪明的事情,它们将运行时才能空指针的检测提前到了编译时,主要方式是增加了Any?这种可为空的类型,使用Kotlin之后,我们程序的空指针会得到明显的改善。

    3.实用,高效率。Kotlin的实用具体表现在

    • 引入Object,便于我们更好的应用单例模式
    • 引入data class, 避免了我们手写getter/setter/toString等方法
    • 引入参数默认值和具名参数,避免了不必要的方法重载
    • 支持扩展方法,让我们可以省去好多必须要的代码

    4.Kotlin引入了Lambda,Streams API 和函数式编程支持。

    • Lambda表达式可以省去了我们创建很多匿名内部类的代码(注由于目前Kotlin基于JVM6,Lambda表达式在字节码阶段依然会翻译成内部类形式)
    • Streams API 结合Lambda表达式和方法引用,让我们的代码处理一件事情以描述的形式,而不是命令实现的方式。
    • Kotlin支持OOP(面向对象编程)和FP(函数式编程),语言本身并没有限制,给了我们选择的自由,Kotlin对FP的友好支持,便于我们写出更加稳定,易于测试,无副作用的方法和代码

    5.可读性 从客观上,Kotlin语法和特性上让代码更加具有描述性而已。但是不得不指出代码可读性主要依赖编写者的编码素质和能力

    对我个人而言,高阶函数和方法扩展这两个特点着实真心受用。方法扩展会让我有一种创造感,这是Java种的Util方法所无法比拟的。

    Kotlin是否会取代Java

    这个很难说,因为这个世界上并不是一件事物好,就会必然得到广泛应用的。一件事物的推广开来靠的是一群人,但阻力也往往也来自一群人,只不过和前者不是相同人群。

    从个人主观来看这个问题,我更加愿意看到这种现象发生。原因并不是因为我更喜欢Kotlin,而是在于我更愿意看到事物在进步,在变得优秀,所以即便某一天Kotlin被更加优秀的语言取代,我也是很欢迎的。

    哪些人适合率先应用 Kotlin

    Kotlin适用于多个平台,并没有对学习者做限制。任何有学习意愿的人都可以习得这门语言。

    但是考虑到国内 Kotlin 资源不够丰富,网络不够畅通等问题,所以导致了很多人变成了吃瓜群众进行观望。

    然而,对于一个项目和团队来说,总需要有第一个人先来推进。而且这个推进过程并非顺利,这其中包括

    • 首先你需要足够了解Kotlin
    • 你需要说服团队,这期间你会接收到很多challenges,有时候你会很沮丧和生气
    • 你需要提供一系列的资料或分享,比如如何配置,sample code, troubleshooting等等
    • 有时候甚至你经常兼职做mentor指导工作,这也就意味着你的手头上的其他工作需要被打断

    上述推进 Kotlin 观点部分参考自Life is Great and Everything Will Be Ok, Kotlin is Here (Google I/O ‘17) 中 Christina Lee(Pinterest Software Engineer,国外 Kotlin 美女布道师之一)的分享内容。

    虽然 Kotlin 很优秀,但是推动在项目中推动 Kotlin 应用并非易事,因为这对于新事物来说在正常不过了,就像明治维新一样看起来很光鲜,成功,但是它的变革进程并非顺利,先是血雨腥风的倒幕运动,再到明治六年爆发的标志武士时代结束的西南战争,经过数十年的努力才算取得成功。

    因此关于哪些人适合率先应用 Kotlin,我认为需要具备以下几点

    • Java 技术和基础要好,这一点很重要
    • 英语要好,因为目前 Kotlin 的资料几乎都是英文的,当然也推荐看英文的
    • 愿意承担在项目团队推进工作,有耐心,敢挑战,负责任

    关于Kotlin 项目应用中 的一些顾虑

    目前想到了一些关于 Kotlin 应用在项目中的一些顾虑。这些顾虑目前并非全面,但是提出来,希望大家可以规避和改善。

    1.写出来的代码并不是 Kotlin style。解决这个问题,还是需要多学习和思考

    2.扩展方法的滥用,Kotlin 的扩展方法很好,我们可以扩展很多方法,弥补Framework的一些不完善,但是扩展时我们需要谨慎,一定要把合适的方法放到合适的类型上,不可为了简单增加不符合某些类不应该具备的职责。 具体需要最好以下两点

    • 选择在合理范围内的最抽象类增加方法,比如我们想为Activity增加一个longToast,应该想一想是不是放在更加抽象的Context会更好一些
    • 同时也不能为了便利,增加和当前类不相关的方法,比如我们想为每个Context增加显示一个简单dialog的扩展方法,这显然不是很合理,因为对于非UI的Context这是有问题。

    Android 程序员的核心竞争力在哪里

    Kotlin出来之后,听到了两种不同的声音:

    • 太好了,终于可以有理由改用Kotlin了,写代码更加高效了。可以逐渐开始放弃Java了。
    • WTF,又要学新的语言,感觉好累,会不会以后面试不会Kotlin就被pass掉呢。

    出现以上两种不同的声音,不得不引起我们对于 Android 程序员的核心竞争力的思考。那么到底什么才是 Android 程序员的核心竞争力呢?

    Android程序员和其他程序员甚至其他职业并无二致,我认为这种竞争力表现在解决问题的能力。想要具备这种能力,极其依赖我们对问题和技术的准确认识和扎实的基础。

    编程语言本质上还是工具,好的工具能带来更好的效果,但是如何运用好,将效率和质量提升到最高,则还是更主要的依赖于开发者的能力。

    选用好的工具,更侧重夯实基础和加强对事物本质认识的能力,我想这样才能让我们的竞争力更强。

    总结而言,Kotlin是一个更好的工具,没有它,并不影响我们日常的 Android 开发工作。但是我还是建议开发者和团队去尝试这种语言,抓住这个近在咫尺的小确幸。

    额外的话

    事情的发展越来越显得不可控了,推介Kotlin和不看好Kotlin的人逐渐分化出来,更准确的说,甚至这件事已经快要演变成了从对事变成了对人。

    Kotlin 成为 Android 官方语言的消息一出来,一下子出来了很多被当做投机蹭热点的Kotlin推介者,当然还出现了一些看不惯这些做法的人,他们认为前者刻意拔高了Kotlin。因而讨论越来越偏向从事情到人的方面。我想要说的是,就像商人追求利润,资本家攫取剩余价值那样,投机者蹭热点,以及招致他人批评,这都是正常的事情,但是我们不能让讨论脱离问题的本质,我们需要回归。

    很多人说Kotlin无非就是很多语法糖,没什么突破

    没错,Kotlin是有很多很多的语法糖。有必要简单普及一下语法糖的概念(如下摘自维基百科

    In computer science, syntactic sugar is syntax within a programming language that is designed to make things easier to read or to express. It makes the language “sweeter” for human use: things can be expressed more clearly, more concisely, or in an alternative style that some may prefer.

    由定义可知,语法糖的目的就是让代码更简单,更可读。

    决定Kotlin使用这么多语法糖的除了简洁,高效可读之外,还有一个原因,是因为kotlin编译生成的class文件是目标到JVM 6(基于JVM 6 是一种权衡后的结果),比如我们在Kotlin中使用了Lambda,它是不可能编译成invokedynamic指令的,因为那样会导致在JVM6上根本无法识别,所以经常通过翻译成内部类的形式来实现。

    使用语法糖又能怎样,它的目的是好的,毕竟它真真实实介绍了开发人员的代码量。

    Kotlin是一门实用语言,这是它的基因,它不是学术语言,它的目标是减轻开发者的负担。它很适合 Android,因为大多数的 Android 的程序员是做工程。

    基于JVM没有什么不好

    Kotlin,是基于JVM的编程语言,但是基于JVM的编程语言并没有什么不好。(J)VM的出现无非也是一种平衡的结果。在牺牲部分执行效率的前提下,提供了一定的抽象,加快了开发者的效率。这种tradeoff其实更加有利于人的一侧,这也是编程语言发展的趋势和目标

    Kotlin 在国内推广应用的道路可谓是 漫漫而修远兮。因此更需要真正实践,去踩坑的人开始on board,去出产更多的真正能推动 Kotlin 应用的文章,分享等这些有实质性意义的行动。

    更多关于Kotlin 和 Android 内容,请访问我的独立博客 技术小黑屋 或者扫描下方的二维码关注我的公众号获取最及时的内容推荐。

    qr code

    展开全文
  • android开发多国语言对照表

    万次阅读 2015-11-04 11:01:53
    android开发,支持多国语言时,都是“语言-地区”简称不好记忆,此处网络收集来作为笔记参考。 android4.3支持源码中msm8x12\build\target\product\languages_full.mk PRODUCT_LOCALES := en_US fr_FR it_IT es_...


    android开发,支持多国语言时,都是“语言-地区”简称不好记忆,此处网络收集来作为笔记参考。


    msm8x12\build\target\product\languages_full.mk

    android4.3源码中支持如下语言地区

    PRODUCT_LOCALES := en_US fr_FR it_IT es_ES de_DE nl_NL cs_CZ pl_PL ja_JP zh_TW zh_CN ru_RU ko_KR nb_NO es_US da_DK el_GR tr_TR pt_PT pt_BR rm_CH sv_SE bg_BG ca_ES en_GB fi_FI hi_IN hr_HR hu_HU in_ID iw_IL lt_LT lv_LV ro_RO sk_SK sl_SI sr_RS uk_UA vi_VN tl_PH ar_EG fa_IR th_TH sw_TZ ms_MY af_ZA zu_ZA am_ET hi_IN en_XA ar_XB fr_CA


    语言代码国家/ 地区
    "" (空字符串)无变化的文化
    af公用荷兰语
    af-ZA公用荷兰语 - 南非
    sq阿尔巴尼亚
    sq-AL阿尔巴尼亚 -阿尔巴尼亚
    ar阿拉伯语
    ar-DZ阿拉伯语 -阿尔及利亚
    ar-BH阿拉伯语 -巴林
    ar-EG阿拉伯语 -埃及
    ar-IQ阿拉伯语 -伊拉克
    ar-JO阿拉伯语 -约旦
    ar-KW阿拉伯语 -科威特
    ar-LB阿拉伯语 -黎巴嫩
    ar-LY阿拉伯语 -利比亚
    ar-MA阿拉伯语 -摩洛哥
    ar-OM阿拉伯语 -阿曼
    ar-QA阿拉伯语 -卡塔尔
    ar-SA阿拉伯语 - 沙特阿拉伯
    ar-SY阿拉伯语 -叙利亚共和国
    ar-TN阿拉伯语 -北非的共和国
    ar-AE阿拉伯语 - 阿拉伯联合酋长国
    ar-YE阿拉伯语 -也门
    hy亚美尼亚
    hy-AM亚美尼亚的 -亚美尼亚
    azAzeri
    az-AZ-CyrlAzeri-(西里尔字母的) 阿塞拜疆
    az-AZ-LatnAzeri(拉丁文)- 阿塞拜疆
    eu巴斯克
    eu-ES巴斯克 -巴斯克
    beBelarusian
    be-BYBelarusian-白俄罗斯
    bg保加利亚
    bg-BG保加利亚 -保加利亚
    ca嘉泰罗尼亚
    ca-ES嘉泰罗尼亚 -嘉泰罗尼亚
    zh-HK华 - 香港的 SAR
    zh-MO华 - 澳门的 SAR
    zh-CN华 -中国
    zh-CHS华 (单一化)
    zh-SG华 -新加坡
    zh-TW华 -台湾
    zh-CHT华 (传统的)
    hr克罗埃西亚
    hr-HR克罗埃西亚 -克罗埃西亚
    cs捷克
    cs-CZ捷克 - 捷克
    da丹麦文
    da-DK丹麦文 -丹麦
    divDhivehi
    div-MVDhivehi-马尔代夫
    nl荷兰
    nl-BE荷兰 -比利时
    nl-NL荷兰 - 荷兰
    en英国
    en-AU英国 -澳洲
    en-BZ英国 -伯利兹
    en-CA英国 -加拿大
    en-CB英国 -加勒比海
    en-IE英国 -爱尔兰
    en-JM英国 -牙买加
    en-NZ英国 - 新西兰
    en-PH英国 -菲律宾共和国
    en-ZA英国 - 南非
    en-TT英国 - 千里达托贝哥共和国
    en-GB英国 - 英国
    en-US英国 - 美国
    en-ZW英国 -津巴布韦
    et爱沙尼亚
    et-EE爱沙尼亚的 -爱沙尼亚
    foFaroese
    fo-FOFaroese- 法罗群岛
    fa波斯语
    fa-IR波斯语 -伊朗王国
    fi芬兰语
    fi-FI芬兰语 -芬兰
    fr法国
    fr-BE法国 -比利时
    fr-CA法国 -加拿大
    fr-FR法国 -法国
    fr-LU法国 -卢森堡
    fr-MC法国 -摩纳哥
    fr-CH法国 -瑞士
    gl加利西亚
    gl-ES加利西亚 -加利西亚
    ka格鲁吉亚州
    ka-GE格鲁吉亚州 -格鲁吉亚州
    de德国
    de-AT德国 -奥地利
    de-DE德国 -德国
    de-LI德国 -列支敦士登
    de-LU德国 -卢森堡
    de-CH德国 -瑞士
    el希腊
    el-GR希腊 -希腊
    guGujarati
    gu-INGujarati-印度
    he希伯来
    he-IL希伯来 -以色列
    hi北印度语
    hi-IN北印度的 -印度
    hu匈牙利
    hu-HU匈牙利的 -匈牙利
    is冰岛语
    is-IS冰岛的 -冰岛
    id印尼
    id-ID印尼 -印尼
    it意大利
    it-IT意大利 -意大利
    it-CH意大利 -瑞士
    ja日本
    ja-JP日本 -日本
    kn卡纳达语
    kn-IN卡纳达语 -印度
    kkKazakh
    kk-KZKazakh-哈萨克
    kokKonkani
    kok-INKonkani-印度
    ko韩国
    ko-KR韩国 -韩国
    kyKyrgyz
    ky-KZKyrgyz-哈萨克
    lv拉脱维亚
    lv-LV拉脱维亚的 -拉脱维亚
    lt立陶宛
    lt-LT立陶宛 -立陶宛
    mk马其顿
    mk-MK马其顿 -FYROM
    ms马来
    ms-BN马来 -汶莱
    ms-MY马来 -马来西亚
    mr马拉地语
    mr-IN马拉地语 -印度
    mn蒙古
    mn-MN蒙古 -蒙古
    no挪威
    nb-NO挪威 (Bokm?l) - 挪威
    nn-NO挪威 (Nynorsk)- 挪威
    pl波兰
    pl-PL波兰 -波兰
    pt葡萄牙
    pt-BR葡萄牙 -巴西
    pt-PT葡萄牙 -葡萄牙
    paPunjab 语
    pa-INPunjab 语 -印度
    ro罗马尼亚语
    ro-RO罗马尼亚语 -罗马尼亚
    ru俄国
    ru-RU俄国 -俄国
    sa梵文
    sa-IN梵文 -印度
    sr-SP-Cyrl塞尔维亚 -(西里尔字母的) 塞尔
    sr-SP-Latn塞尔维亚 (拉丁文)- 塞尔维亚共
    sk斯洛伐克
    sk-SK斯洛伐克 -斯洛伐克
    sl斯洛文尼亚
    sl-SI斯洛文尼亚 -斯洛文尼亚
    es西班牙
    es-AR西班牙 -阿根廷
    es-BO西班牙 -玻利维亚
    es-CL西班牙 -智利
    es-CO西班牙 -哥伦比亚
    es-CR西班牙 - 哥斯达黎加
    es-DO西班牙 - 多米尼加共和国
    es-EC西班牙 -厄瓜多尔
    es-SV西班牙 - 萨尔瓦多
    es-GT西班牙 -危地马拉
    es-HN西班牙 -洪都拉斯
    es-MX西班牙 -墨西哥
    es-NI西班牙 -尼加拉瓜
    es-PA西班牙 -巴拿马
    es-PY西班牙 -巴拉圭
    es-PE西班牙 -秘鲁
    es-PR西班牙 - 波多黎各
    es-ES西班牙 -西班牙
    es-UY西班牙 -乌拉圭
    es-VE西班牙 -委内瑞拉
    swSwahili
    sw-KESwahili-肯尼亚
    sv瑞典
    sv-FI瑞典 -芬兰
    sv-SE瑞典 -瑞典
    syrSyriac
    syr-SYSyriac-叙利亚共和国
    ta坦米尔
    ta-IN坦米尔 -印度
    ttTatar
    tt-RUTatar-俄国
    teTelugu
    te-INTelugu-印度
    th泰国
    th-TH泰国 -泰国
    tr土耳其语
    tr-TR土耳其语 -土耳其
    uk乌克兰
    uk-UA乌克兰 -乌克兰
    urUrdu
    ur-PKUrdu-巴基斯坦
    uzUzbek
    uz-UZ-CyrlUzbek-(西里尔字母的) 乌兹别克
    uz-UZ-LatnUzbek(拉丁文)- 乌兹别克斯坦
    vi越南
    vi-VN越南 -越南

    国家代号与区号




    Countries and Regions 国家或地区 国际域名缩写 电话代码 时差
    Angola 安哥拉 AO 244 -7
    Afghanistan 阿富汗 AF 93 0
    Albania 阿尔巴尼亚 AL 355 -7
    Algeria 阿尔及利亚 DZ 213 -8
    Andorra 安道尔共和国 AD 376 -8
    Anguilla 安圭拉岛 AI 1264 -12
    Antigua and Barbuda 安提瓜和巴布达 AG 1268 -12
    Argentina 阿根廷 AR 54 -11
    Armenia 亚美尼亚 AM 374 -6
    Ascension 阿森松   247 -8
    Australia 澳大利亚 AU 61 +2
    Austria 奥地利 AT 43 -7
    Azerbaijan 阿塞拜疆 AZ 994 -5
    Bahamas 巴哈马 BS 1242 -13
    Bahrain 巴林 BH 973 -5
    Bangladesh 孟加拉国 BD 880 -2
    Barbados 巴巴多斯 BB 1246 -12
    Belarus 白俄罗斯 BY 375 -6
    Belgium 比利时 BE 32 -7
    Belize 伯利兹 BZ 501 -14
    Benin 贝宁 BJ 229 -7
    Bermuda Is. 百慕大群岛 BM 1441 -12
    Bolivia 玻利维亚 BO 591 -12
    Botswana 博茨瓦纳 BW 267 -6
    Brazil 巴西 BR 55 -11
    Brunei 文莱 BN 673 0
    Bulgaria 保加利亚 BG 359 -6
    Burkina-faso 布基纳法索 BF 226 -8
    Burma 缅甸 MM 95 -1.3
    Burundi 布隆迪 BI 257 -6
    Cameroon 喀麦隆 CM 237 -7
    Canada 加拿大 CA 1 -13
    Cayman Is. 开曼群岛   1345 -13
    Central African Republic 中非共和国 CF 236 -7
    Chad 乍得 TD 235 -7
    Chile 智利 CL 56 -13
    China 中国 CN 86 0
    Colombia 哥伦比亚 CO 57 0
    Congo 刚果 CG 242 -7
    Cook Is. 库克群岛 CK 682 -18.3
    Costa Rica 哥斯达黎加 CR 506 -14
    Cuba 古巴 CU 53 -13
    Cyprus 塞浦路斯 CY 357 -6
    Czech Republic 捷克 CZ 420 -7
    Denmark 丹麦 DK 45 -7
    Djibouti 吉布提 DJ 253 -5
    Dominica Rep. 多米尼加共和国 DO 1890 -13
    Ecuador 厄瓜多尔 EC 593 -13
    Egypt 埃及 EG 20 -6
    EI Salvador 萨尔瓦多 SV 503 -14
    Estonia 爱沙尼亚 EE 372 -5
    Ethiopia 埃塞俄比亚 ET 251 -5
    Fiji 斐济 FJ 679 +4
    Finland 芬兰 FI 358 -6
    France 法国 FR 33 -8
    French Guiana 法属圭亚那 GF 594 -12
    Gabon 加蓬 GA 241 -7
    Gambia 冈比亚 GM 220 -8
    Georgia 格鲁吉亚 GE 995 0
    Germany 德国 DE 49 -7
    Ghana 加纳 GH 233 -8
    Gibraltar 直布罗陀 GI 350 -8
    Greece 希腊 GR 30 -6
    Grenada 格林纳达 GD 1809 -14
    Guam 关岛 GU 1671 +2
    Guatemala 危地马拉 GT 502 -14
    Guinea 几内亚 GN 224 -8
    Guyana 圭亚那 GY 592 -11
    Haiti 海地 HT 509 -13
    Honduras 洪都拉斯 HN 504 -14
    Hongkong 香港 HK 852 0
    Hungary 匈牙利 HU 36 -7
    Iceland 冰岛 IS 354 -9
    India 印度 IN 91 -2.3
    Indonesia 印度尼西亚 ID 62 -0.3
    Iran 伊朗 IR 98 -4.3
    Iraq 伊拉克 IQ 964 -5
    Ireland 爱尔兰 IE 353 -4.3
    Israel 以色列 IL 972 -6
    Italy 意大利 IT 39 -7
    Ivory Coast 科特迪瓦   225 -6
    Jamaica 牙买加 JM 1876 -12
    Japan 日本 JP 81 +1
    Jordan 约旦 JO 962 -6
    Kampuchea (Cambodia ) 柬埔寨 KH 855 -1
    Kazakstan 哈萨克斯坦 KZ 327 -5
    Kenya 肯尼亚 KE 254 -5
    Korea 韩国 KR 82 +1
    Kuwait 科威特 KW 965 -5
    Kyrgyzstan 吉尔吉斯坦 KG 331 -5
    Laos 老挝 LA 856 -1
    Latvia 拉脱维亚 LV 371 -5
    Lebanon 黎巴嫩 LB 961 -6
    Lesotho 莱索托 LS 266 -6
    Liberia 利比里亚 LR 231 -8
    Libya 利比亚 LY 218 -6
    Liechtenstein 列支敦士登 LI 423 -7
    Lithuania 立陶宛 LT 370

    展开全文
  • 今年的Google大会把kotlin作为官方的开发语言,学习Kotlin是大势所趋 如图:1.kotlin官方中文翻译文档网址:https://www.kotlincn.net/docs/reference/2.Kotlin官网http://kotlinlang.org/3.kotlin中文官网...
  • Android开发应该用什么语言

    千次阅读 2019-09-14 11:04:13
    自 Google 于 2017 年宣布 Kotlin 成为 Google IO 的 Android 开发官方语言以来,想要成为Android开发人员的程序员正陷入两难境地。 在讨论这个问题前,我首先要明确一点, 不要陷入编程语言战争,不要进行语言鄙视...
  • android开发语言和国际化

    万次阅读 2012-12-24 18:37:08
    这些都是程序默认的资源文件目录,如果要实现多语言版本的话,我们就要添加要实现语言的对应的资源文件。 首先我们点击添加Android Xml File按钮,会出现下面的界面: 输入文件名:string.xml,选中Values...
  • Android开发学习

    千次阅读 多人点赞 2018-05-17 21:18:54
    Android开发学习 Android开发学习 什么是Android开发Android开发用到的工具有哪些? Android开发用到的知识有哪些? Android开发学习路线 Android开发学习资源 什么是Android开发?     Android...
  • android操作系统的开发语言组成

    千次阅读 2014-08-13 10:56:58
    Android系统开源是人尽可知的
  • Picasso,谐音"毕加索",听起来就很艺术,是 Square开源的项目,主导者是是Android大神JakeWharton。 Glide,是google员工在Picasso基础上进行优化,总体比Picasso更优秀,在Google很多项目在用。 Fresc...
  • Go语言开发Android程序

    千次阅读 2017-03-21 22:12:37
    Go 语言开发 Android 程序 转自:http://studygolang.com/articles/9620 环境配置 安装 Go 1.5 以上版本,具体安装步骤见官网 https://golang.org/doc/install 安装 gomobile ...
  • 本文更新时间:2018年07月12日15:50:40 目录 导语 图片加载库 异步分发通信库 新技术语言 ...logger,简单,漂亮的android和强大...LitePal,一个Android库,使得开发人员使用SQLite数据库非常容易。 导语 2017...
  • Android应用开发语言drawable文件夹

    千次阅读 2015-06-29 15:40:52
    Android程序多语言的支持是就该Value文件夹不同国家的区分,前面文档有介绍相对应的国家名称Value如何写 如下说下多语言图片的替换也是就该图片目录文件夹drawable文件夹如下: Background image ...
  • Android开发&国际化多语言处理

    千次阅读 2018-11-02 17:40:29
    Android中的资源文件,在使用时都是根据系统语言来处理的,如果当前环境为英文,则在需要使用字符串等资源时,会自动从values-en类目录中提取,这也是应用国际化的基础 一般的软件中,不会在应用内进行语言环境的...
  • 虽然很多人写过关于Android开发Hello World的文章,但随着时间的推移,开发工具、技术的进步,可能有些已经过时了。我就记录一下当下我所经历的第一个Android APP HelloWorld。一、准备1、开发环境参考:Android ...
  • 一年一度的 Google I/O 大会刚刚进行完毕,对于 Android 开发者来说莫过于 Google 宣布 Kotlin 将成为 Android 开发的官方支持语言以及 Andriod 在全球已经激活 20 亿部设备,Kotlin 到底是个什么东西,可能很多人还...
  • 5月18日谷歌在今日举行的I/O开发者大会上宣布,将Kotlin语言作为安卓开发的一级编程语言。Kotlin由JetBrains公司开发,与Java 100%互通,并具备诸多Java尚不支持的新特性。
  • 简单的入门Android开发和Java语言基础[图] 前言: 去年年底到今年年初,我做过简单的智能家居,也实现过一些简单的直连和远程的智能家居。于是就将最简单的通信发布出来:智能家居简单实现—使用ESP8266简单实现和...
  • Android开发应用内多国语言切换

    千次阅读 2014-05-27 17:37:55
    看到微信可以切换语言,切换语言也就是app国际化问题。我们也都会想到通过改变系统的语言,让app是自己跟随系统走,但是每一台手机系统设置中支持选择的语言,就比较少,比如小米2a:就只有 简体中文,繁体中文,...
  • 转载至:Kotlin如何成为我们Android开发的主要语言引言Kotlin是一个基于JVM的新的编程语言,由JetBrains开发。JetBrains,作为目前广受欢迎的Java IDE IntelliJ的提供商,在Apache许可下已经开源其Kotlin编程语言。...
  • Android语言切换原理

    千次阅读 2017-11-19 15:01:11
    Android语言切换原理前言 之前因为系统有些国家使用的字体乱码的原因,研究了下Android系统字体加载相关的知识,写了一篇Android系统字体加载...Android语言切换流程分析概述 有过Android开发经验的人,应该都知道An
  • Android开发入门书籍强烈推荐

    千次阅读 2016-03-30 16:47:04
    一,Android开发语言基础篇 1.如果没有JAVA基础,或者是从其他平台转来的程序员,首先应该学习的还是JAVA基础,推荐教材:《Head First Java》 这本是一本完整地面向对象(object-oriented,OO)程序设计...
  • android studio一键生成快速开发实现语言国际化

    万次阅读 多人点赞 2015-11-17 08:57:03
    Android代码资源的国际化  internationalization (国际化)简称 i18n,因为在i和n之间还有18个字符,localization(本地化 ),简称L10n。 一般用语言_地区的形式表示一种语言,如 zh_CN, zh_TW. 各国语言缩写...
  • 根据调研机构Strategy Analytics的最新统计数据,2014第三季度,iOS和Android已经占据全球首能手机96%的市场份额。 其中,Android依然是绝对的霸主,豪取83.6%,而且相比去年同期又增长了3个百分点,iOS占比为12.3%...
  • Android 7.0多语言支持开发浅析

    千次阅读 2016-11-02 21:12:31
    Android N 现在允许用户在设置的语言配置中选择多个语言设置 像这样 点击添加语言,然后选择一种语言就可以添加进来。 现在就有两种语言,一般的第一的就相当于是你的母语(譬如中文),第二的相当于是你的第二...
  • Android SDK 提供了在 Android 平台上使用 JaVa 语言进行 Android 应用开发必须的工具和 API 接口。 特性 • 应用程序框架 支持组件的重用与替换 • Dalvik Dalvik Dalvik Dalvik 虚拟机 专为移动设备优化 • ...
  • 操作系统:MAC OS   iPhone app android app 操作系统 MAC OS linux / windows ...jdk+eclipse+android sdk ...开发语言 Objective-C Java   App Store android market
  • Android开发都需要使用什么语言

    万次阅读 2014-11-24 10:15:53
    Android是以Linux为核心的手机操作平台,作为一款开放式的操作系统,随着Android的快速发展,如今已允许开发者使用多种编程语言开发Android应用程序,而不再是以前只能使用Java开发Android应用程序的单一局面。...
  • android开发笔记之 Android 国际化

    千次阅读 2016-05-15 13:38:14
    internationalization (国际化)简称 i18n,因为在i和n之间还有18个字符localization(本地化 ),简称L10n。一般用语言_地区的形式表示一种语言,如 zh_CN, ...android:text=”@string/tv” 在Android工程的res目录下

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 188,988
精华内容 75,595
关键字:

android开发语言