mac下第一个intellij andriod例子

1)下载SDK并解压到一个指定目录(http://developer.android.com/sdk/index.html?hl=sk);

2)新建intellij andriod项目;

3)新建andriod SDK,new project sdk,指向刚下载的android sdk目录下的sdk目录;


4)next,创建一个android virtual device (基本取个名字就行,其他的下拉列表随便选,基本是一个选机型和配置);



5)项目创建完成后,遇到了一些问题,首先就是就遇到jar文件没有导入的问题,代码一片红(不知道是不是我的环境问题),手动导入sdk目录下的andriod.jar解决这个问题。

6)第二个问题,是编译阶段提示platform-tools/aapt和platform-tools/lib/dx.jar文件找不到,其实这两个文件都在build-tools目录下,复制到platform-tools就可以编译了。

7)最后给个运行结果吧(一行代码没写,纯ide生成的hello_world程序)。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的IntelliJ IDEA发布订阅的例子,使用IntelliJ IDEA自带的事件总线框架来实现: 首先,定义一个事件类,例如: ```java public class MyEvent { private String message; public MyEvent(String message) { this.message = message; } public String getMessage() { return message; } } ``` 然后,在发布事件的组件中,例如在项目打开时发布该事件,可以实现ProjectManagerListener接口,并在项目打开时调用事件总线框架的方法来发布该事件,例如: ```java public class MyProjectManagerListener implements ProjectManagerListener { @Override public void projectOpened(@NotNull Project project) { // 发布自定义事件 EventManager eventManager = project.getService(EventManager.class); eventManager.getBus().syncPublisher(MyEvent.class).onMyEvent(new MyEvent("项目已打开")); } @Override public void projectClosed(@NotNull Project project) { // do nothing } } ``` 在上述代码中,使用事件总线框架的syncPublisher方法来获取MyEvent类的订阅者并发布该事件,并传递了一个包含信息的MyEvent对象。 最后,在需要获得该事件信息的组件中,可以实现该事件的处理方法,例如: ```java public class MyEventListener { @Subscribe public void onMyEvent(MyEvent event) { String message = event.getMessage(); // 执行相应的操作 System.out.println("收到事件:" + message); } } ``` 在上述代码中,使用注解@Subscribe来声明该方法是一个事件处理方法,并且该方法的参数类型为MyEvent类,当有MyEvent事件发布时,该方法就会被调用,并且可以获取到事件中传递的信息。 需要注意的是,在使用事件总线框架时,需要在项目中添加相应的依赖,例如: ```groovy dependencies { implementation 'com.google.guava:guava:30.1-jre' } ``` 同时,在项目中需要注册和注销事件处理器,例如: ```java public class MyProjectComponent implements ProjectComponent { private final EventManager eventManager; private final MyEventListener myEventListener; public MyProjectComponent(Project project) { eventManager = project.getService(EventManager.class); myEventListener = new MyEventListener(); } @Override public void initComponent() { // 注册事件处理器 eventManager.getBus().register(myEventListener); } @Override public void disposeComponent() { // 注销事件处理器 eventManager.getBus().unregister(myEventListener); } } ``` 在上述代码中,使用事件总线框架的register方法来注册事件处理器,使用unregister方法来注销事件处理器。同时,需要在项目组件中实现initComponent和disposeComponent方法,并在其中进行相应的注册和注销操作。 这就是一个简单的IntelliJ IDEA发布订阅的例子
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值