1.Eclipse下App放置在项目根目录的bin目录中 2.而Android studio大改后,放在了mole中,所以你一定要记得你的存放路径。也就是工程对应的文件夹。 android studio工程的族态存储路径下app/build/outputs/apk 其中app是你的mole,袜稿在对应的兆好源mole下即可找到
⑵ androidstudio 不自动编译
在 Android Studio使用教程(一)中简要介绍了Android Studio的基本使用,包括安装、新建工程、工程结构以及主题设置。今天接着讲第二篇,主要包括如下内容: 从Eclipse导入工程到Android Studio Eclipse工程与Android Studio的区别 真机运行以及常用快捷键 需要重申一下,我所有的操作与版本是基于Mac系统,在Windows上的同学基本类似(作为一个技术人员,这些应该都不是问题大笑),下面就分主题开始吧: 一、从Eclipse导入工程到Android Studio 根据官方的介绍,Android Studio可以兼容Eclipse的现有工程,但需要做一些操作: 首先升级ADT到最新版本,目前为版本号为22(注意和ADT相关的组件最好一并升级,避免后期可能出现的错误) 选择需要从Eclipse导出的工程,右键选择Export并选择Android下的Generate Gradle Build Files(如下图): 选择完毕后并不会导出到其他地方,而是在本地工程生成了一个build.gradle文件,在Eclipse工程中也可以看到,这个文件是Android Studio识别的,如下图: 3.随后进入Android Studio并选择Import Project,可以看到刚刚在Eclipse中的项目图标变成了一个Android机器人图标,说明转换成功,这时候选择工程导入即可: 至此,就完成了从Eclipse导入现有Android工程到Android Studio,现在可以开始对工程进行操作了! 二、Eclipse工程与Android Studio的区别 Eclipse工程可以导入Android Studio运行,而反过来在Android Studio建立的工程不能在Eclipse中运行; 二者的工程结构不一样,在Eclipse中一个Project就代表一个项目工程,而在Android Studio中就和Intellij一样,一个Project代表一个工作空间,相当于Eclipse中的workspace,而在Android Studio中一个Mole就相当于Eclipse中的一个Project,这个概念需要弄明白,不要混了或觉得糊涂了。 在编辑操作上,在Eclipse中编辑修改后必须手动command+s保存文件,而在Android Studio中就和Intellij一样是自动保存的,这一点和第二点和Xcode也是类似的。 工程目录上的区别,在Eclipse中src部分一般是java文件,res部分是资源文件,包括布局文件和多媒体资源等。在Android Studio中,可以看下图的目录结构: 包括java文件和资源文件全部放到了src目录下,src目录下包括一个main文件夹,再下面就是java文件夹和res文件夹,其实这里,java文件夹就相当于Eclipse中的src,res还是那个res,这里想起了本山老师的小品“src已经不是那个src了,res还是那个res”大笑 三、真机运行以及常用快捷键 在Android Studio中点击界面下方的Android选项卡可以看到Device信息和Logcat,连上设备后打开Android选项卡会检测真机,成功后会显示在Device中,点击顶部的绿色小箭头就可以开始运行工程了。有一点需要注意的是,运行时可以选择模拟器也可以选择真机,由于在Android Studio中运行工程的时候有一个Device优先级选择,如果不设置的话可能会出现只运行在模拟器上的现象,我们可以自行设置一下:先点击Run菜单选择Run Configuration,并选择你想选择的目标设备,可以是模拟器和真机,也可以在运行选由用户选择: 快捷键大家可以对照官方文档进行熟悉,如下表,也可以自己修改配置选项进行自定义: 个人觉得Android Studio还是有一定的前景的,这里就需要Google不断进行完善和改进了,赶紧把大家从Eclipse中解救出来吧。另外,在此期间,大家其实可以尝试使用一下Intellij IDEA,这个默认也是集成Android开发环境的。Android Studio是基于前者改进而来,二者在使用上差不多,也是Eclipse的一个不错的替代者。
⑶ android studio工程使用命令直接编译
在根目录中,使用命亩绝源令
chmod 777 gradlew
./gradlew assembleRelease
即宏历可。
生成的apk在app/build/迅态outputs/apk/release/目录下
⑷ 怎样设置Android Studio自动编译工程
安装Android Studio的准备工作 1.下载好JDK 去官网上找一棚搏个下载下来 2.安装JDK.并配置环境变量.安装过程可以一直下一步,无脑操作 3.下载Android Studio的安装包 去官网上找一个,下载下来 (jdk的环境变量一定要配置) 准备工作完成之后,就可以开始我们的安装了 1.安装Android studio也是无脑操作,一直点下一步。直到安装结束 2.安装好之后,我们要新建我们的项目。重点从这里开始 点击 New Project会出现.我们设置好名称,也可以无脑操作,一直点击next,直至结束,不过这个过程需要我们耐心的等待。(时间有点漫链孝祥长)。 然后我们就会进入我们的开发界面。点击图片中红圈的图标(SDK manager)会出现下图 这个步骤是安装慎斗Android的sdk,推荐,Android1.6~Android4.4.2全部安装。(这个耗费时间挺长的,请在网速良好且大量闲暇时光下安装,安装过程中可以看部电影) 安装完之后,就开始配置我们的avd(Android Virtual Device),也就是Android的虚拟环境。点击,图片中红圈的图标 点击New(Test是我配置好的) 随便设置AVD name,建议如图设置 设置完成之后,就可以点击下图的三角号编译我们的程序了
⑸ Android studio加快编译速度
1.编译优化
File -> Settings -> Build,Execution,Deployment -> Compiler中设置
第一项为并行设置,第二项为开启自动编译,第三项为配置守护进程,都可以开启。
2.开启gradle单独守护进程,开启并行编译,启用新的孵化模式
在以下目录下创建.gradle目录下创建gradle.properties文件(默认C:\User<username>/.gradle/)
配置gradle.properties文件
3.打开后修改最小最大值,根据自己电脑内存大小,对这两个参数进行调整(注意Xms也不必过大)
-Xms 是JVM启动的起始堆内存,堆内存是分配给对象的内存
-Xmx 是 Java 虚拟机启动时的参数,用于限制最大堆内存
4.开启离线模式offline work, 需要的时候再打开
⑹ 怎样设置Android Studio自动编译工程
在 工具 菜单中,选择 选项。 在 文本编辑启哪器 文件夹,选择。 所有语言 子文汪旁察件夹的 常规 选项全困茄局设置此选项。
—或 —
选择子文件夹中的 常规 可供使用的编程语言的。
在 设置下,选择或清除 自动换行 选项。
当 自动换行 选项时, 显示可视的自动换行标志符号 启用选项。
选择,如果您希望显示一个回车箭头指示符在第二行的较长的行换行的 显示可视的自动换行标志符号 选项。 ,如果您不想显示指示箭头,请清除此选项。
⑺ 如何做 android studio 自动生成代码插件
1.介绍
在使用Android Studio开发的时候,大部分人都会使用一些插件来提高开发效率,比如:
ButterKnife 自动生成注解代码
PermissionsDispatcher 更方便的进行Android 6.0权限处理
像这样的插件还有很多很多,但我们不能一直停留在用的程度,这样太不符合程序猿的风格了,今天就让我们自己动手来写一个插件,当以后自己有好的想法的时候,也能写一个出色的插件给大家使用。
想到以前写系统原生dialog的时候还要写一大串代码,简碰旦直太麻烦,今天就用这个做例子,写一个插件来实现一键生成dialog代码。
注:本文只是为了熟悉Android Studio插件开发,所以用一个比较简单的例子来演示。
2.环境搭建
首先需要安装IntelliJ IDEA
安装完成后,运行起来是这个样子的:
IntelliJ IDEA
点击Create New Project新建一个Plugin项目,填写项目名称,选择位置就可以点击finish了。
New Project
项目结构如下图所示:
项目结构
src目录下建包,和平时使用Android Studio的方式是一样的。
到这里,环境就搭建成功了(^-^)V
3.编写插件
新建Action
在新建的包下建一个Action类
New Action
然后填写一些信息
填写信息
ActionID:Action唯一的ID,一般的格式为:pluginName.ID
ClassName:类名
Name:插件最终显示在菜单上的名称
Description:对这个Action的描述信息
然后往下,选择插件在菜单中的位置,这里选择的是Code菜单下第一的位置,然后定义一个快捷键。
点击OK,就创建了一个乎神Action类了,
public class CreateDialogAction extends BaseGenerateAction {
public CreateDialogAction() {
super(null);
}
public CreateDialogAction(CodeInsightActionHandler handler) {
super(handler);
}
@Override
public void actionPerformed(AnActionEvent e) {
}
}
注意把继承的AnAction改成BaseGenerateAction,下文需要用到BaseGenerateAction类中的相关方法。
代码实现
主要实现在类中自动生成代码,首先获取相关的操作类,已在代码中加入注释说明。
public class CreateDialogAction extends BaseGenerateAction {
public CreateDialogAction() {
super(null);
}
public CreateDialogAction(CodeInsightActionHandler handler) {
super(handler);
}
@Override
public void actionPerformed(AnActionEvent e) {
// 获取编辑器中的文件
Project project = e.getData(PlatformDataKeys.PROJECT);
Editor editor = e.getData(PlatformDataKeys.EDITOR);
PsiFile file = PsiUtilBase.getPsiFileInEditor(editor, project);
// 获取当前类
PsiClass targetClass = getTargetClass(editor, file);
// 获取元素操作的工厂类
PsiElementFactory factory = JavaPsiFacade.getElementFactory(project);
// 生成代码
new LayoutCreator(project, targetClass, factory, file).execute();
}
}
生成代码,需要继承WriteCommandAction.Simple类,在run方法中写生成代码的逻岁吵亏辑,将生成dialog的代码存入StringBuilder,然后调用targetClass类中的add方法生成代码,最后再导入需要的类。
public class LayoutCreator extends WriteCommandAction.Simple {
private Project project;
private PsiFile file;
private PsiClass targetClass;
private PsiElementFactory factory;
public LayoutCreator(Project project, PsiClass targetClass, PsiElementFactory factory, PsiFile... files) {
super(project, files);
this.project = project;
this.file = files[0];
this.targetClass = targetClass;
this.factory = factory;
}
@Override
protected void run() throws Throwable {
// 将弹出dialog的方法写在StringBuilder里
StringBuilder dialog = new StringBuilder();
dialog.append("public void showDialog(){");
dialog.append("android.support.v7.app.AlertDialog.Builder builder = new AlertDialog.Builder(this);");
dialog.append("builder.setTitle(\"Title\")\n");
dialog.append(".setMessage(\"Dialog content\")\n");
dialog.append(".setPositiveButton(\"OK\", new android.content.DialogInterface.OnClickListener() {\n" +
"@Override\n" +
"public void onClick(DialogInterface dialog, int which) {\n" +
"\t\n" +
"}" +
"})\n");
dialog.append(".setNegativeButton(\"Cancel\", new DialogInterface.OnClickListener() {\n" +
"@Override\n" +
"public void onClick(DialogInterface dialog, int which) {\n" +
"\t\n" +
"}" +
"})\n");
dialog.append(".show();");
dialog.append("}");
// 将代码添加到当前类里
targetClass.add(factory.createMethodFromText(dialog.toString(), targetClass));
// 导入需要的类
JavaCodeStyleManager styleManager = JavaCodeStyleManager.getInstance(project);
styleManager.optimizeImports(file);
styleManager.shortenClassReferences(targetClass);
}
}
点击编译器右上角的绿色Run按钮,会重新启动一个新的IntelliJ IDEA的界面,在这里创建一个Android工程,点击Code,会看到Android Dialog选项,看下效果:
Android Dialog
OK,到这里我们就成功的创建了一个插件,下面让我们来看看如何来部署插件。
4.部署插件
填写相关信息
打开项目中的plugin.xml文件,填写相关的信息,这些信息会展示在插件库中,如下图所示。
plugin
点击Bulid菜单下的Prepare Plugin按钮会在项目的根目录生成jar插件,如下图所示:
生成插件
安装插件
打开Andorid Studio,选择File -> Settings -> Plugins -> Install plugin from disk,选择我们生成的jar然后重启即可,如下图所示,红框标记的部分就是我们刚才在plugin.xml文件中填写的信息:
安装插件
发布插件
还可以把插件发布到仓库,让其他人也能使用,进入 JetBrains 官网,注册账号,提交插件jar包,填写相关信息,等待审核就可以了。
5.遇到的问题
安装插件的时候出现下面的报错,是因为IDEA中jdk的版本是1.8,而我的Android Studio中jdk的版本是1.7导致的,版本统一就好了。
Android Dialog threw an uncaught PluginException.
6.总结
总结一下之前的步骤:
下载Intellij IDEA,新建一个Intellij Platform Plugin的项目(注意jdk版本的问题,最新的IDEA需要jdk 1.8版本)
在项目中新建一个Action,把继承的AnAction改成BaseGenerateActio
编写API,这个可以参考其他插件的写法
点击Bulid菜单下的Prepare Plugin按钮生成jar,这个jar就可以直接用来安装了