intellijandroid
A. IntelliJ中编译Android程序时出错,错误信息如下,求解
好像是OSProcessHandler类中的init初始化部分为空或者含有空,你检查一下吧
B. 如何在intellij IDEA中导入ECLIPSE的android项目
步骤如下:
1 选择源目录
点击File → Import Project并指定导入项目所存放的磁盘位置。
C. 如何用 Intellij 导入 Android 源码
针对定制源码或者原生源码来说,这些准备步骤都是必须的,没必要再强调了。
2-2 配置导入及使用
2-2-1 编译源码idegen模块及生成AS配置文件(*.ipr)
在开始编译idegen模块前,你一定知道需要先全局编译出out目录及相关文件吧,这个不再过多说了,我们通过如下命令编译idegen模块:
mmm development/tools/idegen/1
这行命令的意思是编译idegen这个模块项目,然后生成idegen.jar文件(不信你自己去查看这个模块的Android.mk的目标吧,不多解释)。运行完以后如果看到如下信息则说明编译OK:
......
#### make completed successfully (7 seconds) ####12
接着执行如下脚本:
development/tools/idegen/idegen.sh1
这行命令的意思是在根目录生成对应的android.ipr、android.iml IEDA工程配置文件。等待片刻得到类似如下信息说明OK:
Read excludes: 21ms
Traversed tree: 194799ms12
通过如上操作我们就完成了基本的源码配置工作。
2-2-2 导入Android Studio前的一些客户化操作
大家都知道使用Eclipse倒入源码很慢,Android Studio导入源码时也慢,所以建议修改android.iml文件(将自己不用的代码去掉),然后再导入Studio。
就像下面摘取的android.iml文件1887行开始的这些一样:
<sourceFolder url="file://$MODULE_DIR$/./sdk/testapps/userLibTest/src" isTestSource="true"/>
<sourceFolder url="file://$MODULE_DIR$/./tools/external/fat32lib/src/main/java" isTestSource="false"/>
<excludeFolder url="file://$MODULE_DIR$/out/eclipse"/>
<excludeFolder url="file://$MODULE_DIR$/.repo"/>
<excludeFolder url="file://$MODULE_DIR$/external/bluetooth"/>
<excludeFolder url="file://$MODULE_DIR$/external/chromium"/>
<excludeFolder url="file://$MODULE_DIR$/external/icu4c"/>
<excludeFolder url="file://$MODULE_DIR$/external/webkit"/>
<excludeFolder url="file://$MODULE_DIR$/frameworks/base/docs"/>
<excludeFolder url="file://$MODULE_DIR$/out/host"/>
<excludeFolder url="file://$MODULE_DIR$/out/target/common/docs"/>
<excludeFolder url="file://$MODULE_DIR$/out/target/common/obj/JAVA_LIBRARIES/android_stubs_current_intermediates"/>
<excludeFolder url="file://$MODULE_DIR$/out/target/proct"/>
<excludeFolder url="file://$MODULE_DIR$/prebuilt"/>1234567891011121314
我们可以仿照上面这段代码的<excludeFolder url="file://$MODULE_DIR$/.repo"/>写法一样过滤掉不需要的内容,这样在导入时就会快很多。
也可以通过Android Studio的Project Stucture 打开左侧Moles,然后将右侧Sources中一些目录Excluded掉。
2-2-3 使用Android Studio导入源码工程
有了如上的这些操作以后,我们打开Android Studio,然后选择打开一个现有的Android Studio项目,然后选择打开源码根目录下的android.ipr文件,然后出现如图一样的索引即可等待导入就行:tu
到目前为止我们就可以方便的使用Android Studio查看源码啦。如下图所示:
吊不屌!!!
2-3 使用技巧
上图我们看见了,可以通过Android Studio搜索整套源码的代码了。但是这时候如果你打开一个Service.java类,然后把鼠标放在其中任意方法的Intent参数上按住CTRL+鼠标左键跳转到Intent类你会发现跳转过去的是一个Intent.class文件,为啥呢?因为他跳转的是你的默认SDK中的jar内部的class文件。既然要修改查看整套源码,这么跳转得多蛋疼啊,所以我们需要配置让其能跳转到Intent.java文件,具体做法如下:
首先删掉依赖中的所有依赖,只保留下图中没被选中的那两个(当然你可以选择保留一些你用到的其他jar),如下:
接着点击加号的JARs or directories将你源码的frameworks及external和你用到的其他跳转目录添加到依赖中,然后apply即可。
这时候我们在像上面一样打开Service.java跳转Intent,你会发现像下图一样直接跳转到你源码路径下的Intent.java文件了,如下:
到此对于平时只是查看源码的人来说已经够用了。
3 总结
俗话说工欲善其事必先利其器,你会发现使用Android Studio比Eclipse和Source Insight都好很多(当然了,SubText还是很强大的),无论是代码提示还是跳转、还是Python Shell等插件支持等都很强大,慢慢体验吧。
顺带说一句,Google的野心真的很大,看来Android Studio即将要被他们打造为全能IDE了。
4 附加README
附上原版的英文README文档,英语高手直接看这里就行:
IDEGen automatically generates Android IDE configurations for IntelliJ IDEA
and Eclipse. Your IDE should be able to compile everything in a reasonable
amount of time with no errors.
If you’re using IntelliJ…
If this is your first time using IDEGen...
IDEA needs a lot of memory. Add "-Xms748m -Xmx748m" to your VM options
in "IDEA_HOME/bin/idea.vmoptions" on Linux or
"IntelliJ IDEA.app/Contents/Info.plist" on OS X.
Create a JDK configuration named "1.6 (No Libraries)" by adding a new
JDK like you normally would and then removing all of the jar entries
under the "Classpath" tab. This will ensure that you only get access to
Android's core libraries and not those from your desktop VM.
From the project's root directory...
Repeat these steps after each sync...
1) make (to proce generated .java source)
2) development/tools/idegen/idegen.sh
3) Open android.ipr in IntelliJ. If you already have the project open,
hit the sync button in IntelliJ, and it will automatically detect the
updated configuration.
If you get unexpected compilation errors from IntelliJ, try running
"Build -> Rebuild Project". Sometimes IntelliJ gets confused after the
project changes significantly.
If you’re using Eclipse…
If this is your first time using IDEGen...
Edit eclipse.ini ("Eclipse.app/Contents/MacOS/eclipse.ini" on OS X) and
add "-Xms748m -Xmx748m" to your VM options.
Configure a JRE named "1.5 (No Libraries)" under "Preferences -> Java ->
Installed JREs". Remove all of the jar entries underneath "JRE system
libraries". Eclipse will not let you save your configuration unless at
least one jar is present, so include a random jar that won't get in the
way.
From the project's root directory...
Repeat these steps after each sync...
1) make (to proce generated .java source)
2) development/tools/idegen/idegen.sh
3) Import the project root directory into your Eclipse workspace. If you
already have the project open, simply refresh it (F5).
Excluding source roots and jars
IDEGen keeps an exclusion list in the "excluded-paths" file. This file
has one regular expression per line that matches paths (relative to the
project root) that should be excluded from the IDE configuration. We
use Java's regular expression parser (see java.util.regex.Parser).
You can create your own additional exclusion list by creating an
"excluded-paths" file in the project's root directory. For example, you
might exclude all apps except the Browser in your IDE configuration with
this regular expression: "^packages/apps/(?!Browser)".
Controlling source root ordering (Eclipse)
You may want some source roots to come before others in Eclipse. Simply
create a file named "path-precedence" in your project's root directory.
Each line in the file is a regular expression that matches a source root
path (relative to the project's root directory). If a given source root's
path matches a regular expression that comes earlier in the file, that
source root will come earlier in the generated configuration. If a source
root doesn't match any of the expressions in the file, it will come last,
so you effectively have an implicit ".*" rule at the end of the file.
For example, if you want your applications's source root to come first,
you might add an expression like "^packages/apps/MyApp/src$" to the top
of the "path-precedence" file. To make source roots under ./out come last,
add "^(?!out/)" (which matches all paths that don't start with "out/").
D. 用Intellij idea做Android开发中zxing导包,运行时出现包不存在错误
因为这个zxing的库是属于library,如果你复制到项目中以后,会有缓存问题
你可以先clean一下项目,将缓存文件清除
建议使用Android Studio做开发工具,Android studio是基于Intellij IDEA专门为安卓开发的IDE,自从android Studio 1.0正式版发布以后google已经正式使用android Studio了,目前版本是 1.3.2 正式版
E. 如何在Intellij中配置Android annotations
Android annotation方法/步骤
1、首先我们要下载一个anntations的jar包,可以在网上搜到。
2、新建一个mole用于演示android anntations的配置。
3、在project文件夹内新建一个 complie-lib文件夹,把刚才的jar包放进去,同时也放在mole的libs文件夹里一个。
4、打开左上角的全局设置 File-Setting。
按照步骤先找到代码的注释选项,然后在右侧的路径里选择刚才新建的complie-lib文件夹内的jar文件,最后点击 Moule content root选项后点击Apply应用。
在Mole上点击右键,打开Mole设置。
在属性选项卡里,点击右侧绿色小加号,选择第一个 添加jar包。
这是添加进去的是Mole下,libs文件夹内的jar包。
打开一个Activity 在类声明上面添加
@EActivity(R.layout.main) //这是main是layout的id
然后注释掉下面的setContentView一句。
点击上方的Build-Make ,会显示错误,但是已经生成了一些文件,我们继续修改。
在AndroidManifest.xml文件夹里,更改原来的.MyActivity的名字为 .MyActivity_ 也就是后面多加一个 _ 。
再次打开Mole设置,在源文件选项卡里把generated设置为源文件,并点击Apply。
点击Run选项,然后选择编辑Run的设置。
将Mole的启动Activity 设置为MyAcivity_。
之后再次Make ,Run 。 App就可以正常执行。
Android annotations 就可以正常使用了。
F. IntelliJ IDEA开发Android时如何导出签名APK~,求大侠赐教~
如图,build菜单倒数第二行,接下来自己填写信息,next,...
G. Android Studio和IntelliJ IDEA的不同点在什么地方
两者不同点在于支持的开发环境和开发公司不同。
1、开发的公司不同
Android Studio是谷歌开发的Android开发插件。
IntelliJ IDEA是JetBrains公司推出的Java集成开发环境。
2、支持的开发环境不同
Android Studio只支持Android开发,是谷歌在IntelliJ IDEA社区版上剔除其他功能的一款专注Android开发的插件,可以说是弱化版的IntelliJ IDEA。
IntelliJ IDEA是JetBrains公司推出的Java集成开发环境,当然Android也是基于java的,IntelliJ IDEA除了支持Android开发,还支持JavaSE,Android,Groovy,Scale,HTML,CSS,PHP等语言的开发。
(7)intellijandroid扩展阅读:
IntelliJ IDEA优点:
1、最突出的功能自然是调试(Debug),可以对Java代码,JavaScript,JQuery,Ajax等技术进行调试。
2、查看Map类型的对象,如果实现类采用的是哈希映射,则会自动过滤空的Entry实例。
3、需要动态Evaluate一个表达式的值,比如我得到了一个类的实例,但是并不知晓它的API,可以通过Code Completion点出它所支持的方法。
4、最后,在多线程调试的情况下,Log on console的功能可以帮你检查多线程执行的情况。
在IDEA的基础上,Android Studio 提供:
1、基于Gradle的构建支持
2、Android 专属的重构和快速修复
3、提示工具以捕获性能、可用性、版本兼容性等问题
4、支持ProGuard 和应用签名
5、基于模板的向导来生成常用的 Android 应用设计和组件
6、功能强大的布局编辑器,可以让你拖拉 UI 控件并进行效果预览
H. Android Studio与其IntelliJ IDEA相比,其差异与利弊主要有哪些
Intellij有一个非常强大的用XML描述插件系统,他可以在IDE的各个环节加上扩展,
比如欢迎界面,语言和构建系统的支持,菜单, etc
这些代码以外部资源(jar)的方式加载进IDE,并不需要你去修改Intellij本身的代码。
所以Android Studio最核心的部分就是一个Intellij插件(Android Support Plugin),那么最初Android Studio和直接用Intellij + Android插件的区别就似乎就只是一些启动flag的问题(比如说要有一个flag表明这是不是专门的android studio模式,导致欢迎界面有些不同)
但实际上的差别还是特别大的。
1. 基本功能上
首先intellij里面的Android Support plugin落后Android Studio里面的Plugin很多版本(有时候会有半年甚至半年以上的GAP),这是因为Intellij发布在先,之后Google才会跟进开发,等Android Studio发布了之后,Intellij那边再把Google的plugin拿过去测试并发布
其次为了让用户体验更好,在Android Studio模式下,插件会提供更定制化的界面,比如“模块设置”等功能
另外Google发现很多外部插件和Android Plugin会有冲突,所以对外部插件的支持不是很积极。
2. 语言支持上
发行版的Android Studio其实包含了不止Android Support插件,还会包含NDK插件(支持C++的开发),这是Google花重金向Jetbrains购买的C++代码分析和索引技术,这些技术之前只用在收费的Clion上面,现在虽然Google能让大家能在Android Studio中也能免费用上。但单独用免费的Intellij是没有这个好处的。
之后也会有更多的功能因为各种限制不会放在Android Support插件中而只能使用Studio.
3. 软件质量
需要对开发团队强调的是,Android Studio比Intellj + Android插件要稳定很多
看过Intellij代码的童鞋可能有感觉就是就是代码注释特别少,测试特别简单
Google的开发观念还是不太一样的,所以Google在开发Android Studio的过程中加入了大量的单元和集成测试,但不幸的是这些测试都只是专门跑在Android Studio的模式下,很多测试已证实在Intellij模式下会挂掉,但这个google修理得确实不太积极:(
-> 虽然 2013 年的官方文档说 AS 不是 idea 的 fork,但现在是 2016 年,二者的差别似乎不只因为配置不同了
UI上的不同,像我之前提到过,主要还是插件在不同模式下做的事情不同,而不是代码fork的问题
Google的原则是尽量不fork,不过事实上也确实很难做到,比如Intellij的日志诊断系统在Android Studio下面就被改掉了(不然bug report都发到jetbrain去了)。原因主要还是Intellij的插件系统还没有非常完美,对此Google会尝试交一些patch给Intellij,争取之后能再改回来。
另外就是有时候Intellij也会fork Google的Android plugin的代码,两边相互扯皮之事也时有发生。。。
I. Android Studio与其IntelliJ IDEA相比,其差异与利弊主要有哪些
首先是差异,IDEA是JetBrains公司推出的Java集成开发环境,分为免费社区版与收费旗舰版,据我所知这两个版本的差异主要在对JavaEE开发的支持上,社区版貌似只支持JavaSE,Android,Groovy,Scale,收费版还支持JavaEE的开发,具体可查看官网上的差异说明,可以到IntelliJ IDEA 查看。下面是个官方截图:
而Android Studio是基于IDEA Commutity Edition开发的,因为Community 版本不仅是免费的而且是开源的,请看下图:
可以看出之前刚推出的studio1.0正式版是基于idea13开发的,而不是最新的idea14.
上面这些大概说清了这三者之间的差异了。
下面说一下利弊:
虽然Android Studio是基于IDEA开发的,但studio是一个纯粹的Android开发环境,并不支持诸如Groovy,scale虽然IDEA社区版支持,但google已把它们剔除了,所以可能Studio支持的开发更少,貌似属于弊的范畴吧(可我觉得这是优点,Android Studio就只做Android)。
再者,虽然IDEA 社区版也原生支持Android开发,但对于Android开发的支持上定不如Studio来的彻底,再加上经过Google两年的开发studio已经进入了1.0的正式版时代,所以如果你做Android开发选studio就对了。(在Studio转正之前idea应该是做Android开发的一个不错的选择,但现在不是了)。
最后总结一句,如果你是Android开发者就选择studio吧,这是最佳选择,而如果你不是那就选择idea吧。
J. intellij idea怎么创建一个android app
IntelliJ IDEA社区版作为一个轻量级的Java开发IDE,是一个开箱即用的Android开发工具。
注意:在本次的教程中我们将以Android平台2.2为例进行IntelliJ IDEA的使用说明,Android 2.2虽然是一个很老的Android SDK版本,但是这样可以保证你所开发的应用程序可以在更多的设备上进行测试,用以确定程序的硬件设备兼容性。
1 启动Create New Project向导
在IntelliJ IDEA的主页面上,启动Create New Project向导。
下一步需要用户选择想创建项目的类型:选择需要创建的Android模块类型。每一个选择对应一个不同的项目模板。
2 选择项目模板
从下图的对话框中选择项目模板,然后进入创建项目的基本信息设置。
最常见的选择是Application Mole。这个选项将让IntelliJ IDEA按照一些预定义的结构安排项目。在这种情况下用户可以照原来的样子编译项目,之后得到一个几乎是空的,但功能齐全的Android应用程序。如果选择Empty Mole选项,IntelliJ IDEA将为指定的Android平台提供一个简单的空项目,不会生成额外的内容。Library Mole则是用于构建共享代码类库。
在这里我们选择Application Mole,输入项目名称和目标文件夹。更重要的是,用户应该选择目标Android平台。这个时候下拉列表已经通过SDK Manager预装好用户所选定的平台。点击Next进入下一步。
如果Java SDK或Android SDK没有安装或者配置错误,用户可能会遇到一些麻烦。这个时候可以单击File → Project Structure解决这些可能遇到的问题。
3 编辑项目属性
下面的对话框包含了应用程序名称和程序包名,并允许用户设置目标设备和启动activity。
程序包的名称应该是com.xxx.yyy的格式,xxx通常代表公司名称,yyy是应用程序名称。当然用户可以在这里使用任何名称,但这个建议会极大降低与其他应用程序名称冲突的风险。
IntelliJ IDEA提供创建一个名为MyActivity的示例activity。在安卓开发中,activity是一个纯Java类,也是任何Android应用程序不可或缺的组成部分。
4 设置目标设备
对话框也可以让用户定义IntelliJ IDEA如何运行示例应用程序。有三种基本运行配置:
Show device chooser dialog表明在每次从启动应用程序时,IDEIntelliJ IDEA将要求用户选择通过USB连接模拟器或设备。
USB device表明,IntelliJ IDEA将通过一个USB端口自动尝试将应用程序部署到任何兼容的设备。通常在用户想测试在一个物理设备的程序兼容性时使用。
Emulator表明IntelliJ IDEA将该应用程序部署到配置的仿真器。请注意,您还需要设置一个Android虚拟设备(AVD)在模拟器运行应用程序。这一步骤可在几分钟之内完成。
一切准备就绪之后,单击Finish创建项目。