我想ImageView用箭头从当前用户位置旋转一些先前保存的GPS位置.我该怎么做呢?
初始轴承是否从Location.distanceBetween方法中得到了正确的方法?如果是这样,我如何将其与指南针读数一起使用?
所以我需要将多个图像上传到网络服务器.我创建了上传方法.我现在需要一种方法来建立一个上传队列,以便我可以管理和取消上传.做这样的事情的最佳方法是什么?我会为此运行服务.我正在查看IntentService类,它似乎是一个很好的方法来执行队列(因为我只需要一次上传1个文件),但我的上传将包含3个部分 - 第一部分我正在调用服务器获得授权,第二个将是实际上传,第三个将发送文件已成功发送的确认.
好的,这是交易.如何取消队列中的特定下载?如果进程位于上传的第三部分(将成功的上传信息发布到webService),如何推迟销毁服务?
I am writing an app with Spring Boot + JPA, using a Postgres database. I have a User Entity and I am trying to get a timestamp when the user record is saved and/or modified. This is not working. The record that is being saved has "null" for both createdDate and lastModifiedDate.
Here is all the relevant code in Kotlin:
@Entity
@Table(name = "app_user")
@EntityListeners(AuditingEntityListener::class)
data class User(
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
val id: UUID? = null, …Run Code Online (Sandbox Code Playgroud) 如何在谷歌地图中更改MyLocationOverlay的默认蓝色动画标记?
所以我需要进行一些http调用,这些调用返回包含单个或一组json对象的JSON响应.我有整个部分的执行http客户端调用和工作,它返回一个带有json响应的字符串.
所以我的问题是:什么是使调用异步的最佳方法.我目前正在使用异步任务调用方法,该方法在后台方法中返回字符串,并通过另一个调用解析用于解析的静态方法解析字符串,该方法返回包含我发送到postExecute部分的所有数据的POJO根据结果将结果呈现给ui.这是一个好习惯还是有更好的方法?
我在考虑引入接口来提供数据,例如onSuccess listener和onFail Listener.那有什么建议吗?
谢谢.
我正在创建一个自动填充字段,通过显示名称和电子邮件查询联系人.当有人在过滤后点击所需的联系人时,将该联系人添加到带有他的电子邮件的列表中,显示名称和图片(如果他有).
所以到目前为止我已经设法做了所有事情,除了让照片出现.以下是我如何运行查询以获取电子邮件,显示名称,ID和照片ID.
return mContent.query(Email.CONTENT_URI,
PROJECTION, filter, null, null);
Run Code Online (Sandbox Code Playgroud)
投影的地方是:
PROJECTION = new String[] {ContactsContract.Contacts._ID,
ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.Contacts.PHOTO_ID,
Email.DATA
};
Run Code Online (Sandbox Code Playgroud)
这个做我需要的并返回所有数据.但是我在调试此问题时注意到的一件事是联系人ID与例如针对特定显示名称对ContactsContract.Contacts.CONTENT_URI运行查询时的联系人ID不同.
例如我运行的测试我通过运行Contacts.CONTENT_URI获得了所有联系人.我给了一个图像联系人,ID为152.但是对于同一联系人,对Email.CONTENT_URI的查询给了我一个452的id(使用相同的显示名称和电子邮件地址).因此,当我试图获取包含Id 452的内容uri的照片时,它返回该照片不存在,但如果我尝试获取152的照片它完美地工作.
是什么导致了这个问题?我如何获得正确的用户名?是否有任何关系查询,我可以运行以获取联系人ID,或者可能是在这个问题的帮助下获得它的正确方法.
谢谢.
编辑
我发现这是在挖掘旧代码.可能对任何人都有帮助.
所以完整的查询:
String[] PROJECTION = new String[] { ContactsContract.RawContacts._ID,
ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.Contacts.PHOTO_ID,
Email.DATA, ContactsContract.CommonDataKinds.Photo.CONTACT_ID };
String order = " CASE WHEN " + ContactsContract.Contacts.DISPLAY_NAME
+ " NOT LIKE '%@%' THEN 1" + " ELSE 2 END, "
+ ContactsContract.Contacts.DISPLAY_NAME + " COLLATE NOCASE";
String filter = Email.DATA + " NOT LIKE '' ) GROUP BY ( " …Run Code Online (Sandbox Code Playgroud) 我的页面加载了一个可滚动的TextView.不幸的是,当将新文本加载到视图中时,该位置似乎会粘住,因此Text会在屏幕外显示或完全不可见.有没有办法将当前"已查看"的文本重置为顶部?
我对 Spring 生态系统和 Webflux 都很陌生。我试图弄清楚两件事,但找不到任何具体细节。
我的设置:
我正在使用 WebFlux 编写 Spring Boot 2 REST API(不使用控制器,而是使用处理程序函数)。身份验证服务器是一项单独的服务,它发出 JWT 令牌,并将这些令牌作为身份验证标头附加到每个请求。这是一个请求方法的简单示例:
public Mono<ServerResponse> all(ServerRequest serverRequest) {
return principal(serverRequest).flatMap(principal ->
ReactiveResponses.listResponse(this.projectService.all(principal)));
}
Run Code Online (Sandbox Code Playgroud)
我用它来响应用户有权访问的所有“项目”列表的 GET 请求。
之后我有一个服务检索该用户的项目列表,并呈现一个 json 响应。
问题:
现在,为了根据当前用户 ID 过滤项目,我需要从请求主体中读取它。这里的一个问题是,我有很多需要当前用户信息的服务方法,并将其传递给服务似乎是一种矫枉过正。一种解决方案是从以下位置读取服务内的主体:
Object principal = SecurityContextHolder.getContext().getAuthentication().getPrincipal();
问题一:
在编写功能代码时,这通常是一个很好的做法吗(如果我这样做而不是传播主体)?尽管在每种方法中读取主体并将其从请求发送到服务都很复杂,但这是否是一个好方法?
问题2:
我应该使用 SecurityContextHolder 线程本地来获取主体,如果我这样做,我该如何为我的服务编写测试?
如果我使用安全上下文,如何测试需要类型为主体的服务实现JWTAuthenticationToken 
null当我尝试做类似此处描述的事情时,我总是会遇到这样的情况:使用 Spring Security 进行单元测试
在服务测试中,到目前为止,我在测试中所做的是将主体传播到服务方法并使用mockito 来模拟主体。这非常简单。在端点测试中,我@WithMockUser在执行请求时使用填充主体,并模拟服务层。这样做的缺点是主要类型不同。
这是我的服务层测试类的样子:
@DataMongoTest
@Import({ProjectServiceImpl.class})
class ProjectServiceImplTest extends BaseServiceTest {
@Autowired
ProjectServiceImpl projectService;
@Autowired
ProjectRepository projectRepository;
@Mock
Principal principal;
@Mock
Principal principal2;
@BeforeEach
void …Run Code Online (Sandbox Code Playgroud) spring-security spring-boot spring-security-oauth2 spring-webflux
我有一个简单的静态页面应用程序,我用nanoc构建,我想将其部署为github页面.
一切顺利,除了资产(如css,javascripts)和所有链接一般指向回购的根目录:
喜欢
/css/style.css
而不是
/docs/css/style.css
一切在localhost上运行良好但在发布时失败.
我正在使用rake发布将其推送到gh-pages.
这是我的Rakefile
require 'nanoc3/tasks'
BASE_URL = "http://darko1002001.github.com/docs/"
desc "Compile the site"
task :compile do
`nanoc compile`
end
desc "Publish to http://documentation.getchute.com"
task :publish => [:clean] do
FileUtils.rm_r('output') if File.exist?('output')
sh "nanoc compile"
ENV['GIT_DIR'] = File.expand_path(`git rev-parse --git-dir`.chomp)
old_sha = `git rev-parse refs/remotes/origin/gh-pages`.chomp
Dir.chdir('output') do
ENV['GIT_INDEX_FILE'] = gif = '/tmp/dev.gh.i'
ENV['GIT_WORK_TREE'] = Dir.pwd
File.unlink(gif) if File.file?(gif)
`git add -A`
tsha = `git write-tree`.strip
puts "Created tree #{tsha}"
if old_sha.size == 40
csha = `echo …Run Code Online (Sandbox Code Playgroud) 我目前正在做一个自定义方案intent-filter来从浏览器打开我自己的应用程序.
是否可以打开活动来启动广播接收器.
我目前的活动广播接收器代码是这样的:
<action android:name="android.intent.action.VIEW" >
</action>
<category android:name="android.intent.category.DEFAULT" >
</category>
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="shortener.com"
android:scheme="shortener" >
</data>
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
这是我的接收器代码.不会触发.尝试了View操作和自定义操作
<receiver android:name="MyReceiver" >
<intent-filter>
<action android:name="com.dg.action.CONFIGURE" >
</action>
<category android:name="android.intent.category.DEFAULT" >
</category>
<data
android:host="shortener.com"
android:scheme="shortener" >
</data>
</intent-filter>
</receiver>
Run Code Online (Sandbox Code Playgroud) 我有以下问题.
我必须将json请求解析为包含泛型类型字段的对象.
编辑
我已经使用常规类类型进行了一些测试(因此我在使用泛型替换之前使其工作).现在解析单个元素效果很好.
问题是当我需要从该类解析出一个列表对象时.
所以我必须以某种方式通知杰克逊我的T是类型列表而不是AlbumModel.
这是我尝试过的.
@Override
public ListResponseModel<AlbumModel> parse(String responseBody) throws Exception {
JavaType type = mapper.getTypeFactory().constructParametricType(ResponseModel.class,
AlbumModel.class);
return mapper.readValue(responseBody,
mapper.getTypeFactory().constructParametricType(ResponseModel.class, type));
}
Run Code Online (Sandbox Code Playgroud)
但上面的代码不起作用.什么是这样的解决方案?
ListResponseModel中的我的泛型类型定义如下: List<T> data
成功如下:
public class BaseResponseModel<T> {
@JsonProperty("data")
private T data;
@JsonProperty("paginations")
private PaginationModel pagination;
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,我有以下代码,但它始终解析为哈希.
public class ResponseParser extends BaseJacksonMapperResponseParser<ResponseModel<AlbumModel>> {
public static final String TAG = ResponseParser.class.getSimpleName();
@Override
public ResponseModel<AlbumModel> parse(String responseBody) throws Exception {
return mapper.readValue(responseBody,
mapper.getTypeFactory().constructParametricType(ResponseModel.class, AlbumModel.class));
}
}
public abstract class BaseJacksonMapperResponseParser<T> implements HttpResponseParser<T> {
public static …Run Code Online (Sandbox Code Playgroud)