使用我的Android应用程序,当用户执行某项操作时,会启动后台服务,该服务会获取当前GPS位置并将其保存在数据库中,此外还会执行其他操作.在该服务中,我用的是requestLocationUpdates()从LocationManager类和等待onLocationChanged()我的LocationListener(这是由服务实现)被触发.但等待onLocationChanged开火的最佳方式是什么?我应该简单地轮询一个变量并等到它被设置?有小费吗?
注意:onLocationChanged()由于其他一些原因,我不能简单地写入数据库.
编辑:为了清除我的情况,我可以提供一个类似于我的情况的例子:假设用户按下一个按钮并myMethod触发一个方法,它将返回一些对象.然后,在这个myMethod中,我将从GPS(使用requestLocationChanged)注册位置更新,另外等待用户位置并将其用于某些事情.换句话说,myMethod在位置存在之前无法返回.onLocationChanged在这种情况下,我不知道如何使用.
我有多模块Maven项目,我在其中运行maven-javadoc-plugin来生成javadoc.在我的父pom.xml中,我已经定义了插件构建如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<!-- Default configuration for all reports -->
</configuration>
<executions>
<execution>
<id>aggregate</id>
<goals>
<goal>aggregate-jar</goal>
</goals>
<phase>install</phase>
<configuration>
<!-- Specific configuration for the aggregate report -->
</configuration>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
当我运行mvn clean install构建失败并具有未解析的依赖项时,但我看到以下警告:
[警告]依赖项:[my.application:my-module:jar:1.7.1]无法解析但已在反应堆中找到(可能是快照).此依赖项已从Javadoc类路径中排除.您应该在执行mvn install后重新运行javadoc.
由于我目前正在构建我的模块1.7.1,我会假设Maven在构建my-module后检测到并运行aggregate-jar,但由于某种原因,它希望my-module已经安装在repo中.
我的Maven版本是3.0.4.请记住,我是Maven构建的新手,所以这可能是一个非常简单的问题,但我无法找到任何答案.
一些观察:
mvn clean install没有javadoc插件aggregate-jar目标,构建成功aggregate目标运行正常.