小编Rod*_*tro的帖子

检查每个活动的登录情况

我正在开发和应用程序,用户必须先登录才能使用它.我自定义了标题栏并在其中放置了一个注销按钮,以便用户可以随时注销,并使用其他帐户登录.然后应用程序应再次显示登录活动.

这很好,但我的问题是后退按钮.当用户注销时,登录活动显示,但如果他按下,则应用程序返回上一页,使用户能够再次使用该活动,即使没有登录也是如此.

我通过onCreate()这种方式设置了所有活动:

public void onCreate(Bundle savedInstanceState) {  
    // Activity code  
    checkLogin();  
}
Run Code Online (Sandbox Code Playgroud)

而且checkLogin():

if (GlobalContext.getCurrentUser() == null) {
    Intent i = new Intent(this, LoginActivity.class);
    startActivityForResult(i, GlobalContext.REQUEST_LOGIN);
}
Run Code Online (Sandbox Code Playgroud)

然而,这不应该像它应该的那样工作,我的应用程序有时会在我按下时崩溃,有时它会像我说的那样返回到之前的活动,有时它确实有效.

checkLogin()每次活动(重新)开始时,如何进行调用?
或者还有另一种更好的方法来做我想要的事情?

编辑:

基于@Gabriel的答案和SDK参考中的以下图表,我移动checkLogin()onResume()方法而不是onCreate解决我的问题.

活动生命周期

authentication android login titlebar android-activity

11
推荐指数
2
解决办法
6313
查看次数

将Java中的转换日期转换为整数然后转换为Delphi时间

我有一个服务器设备配置,我需要使用UDP更改装备日期配置.服务器是用Java和设备编写的,用Delphi编写.

所以,数据流是这样的:

Java server (Java date) -> UDP (integer date) -> Delphi equipment (Delphi date)

问题是,当我将日期作为整数传递时,java会计算1970年的毫秒数和德尔福数秒.我通过以下日期:today.getTime() / 1000但是设备将此理解为2008年的日期,当时我们在2012年.

我可以更改Java代码,但设备是第三方,我无法访问它的源代码.

Java和Delphi日期解析之间存在差异,允许这种差异吗?

编辑: 感谢MДΓΓБДLL我发现我被乘以1000,而不是由它划分,我现在有一个美好的约会,但仍然是错误的(2033年被somewhen,现在是2008年).

java delphi time parsing date

6
推荐指数
2
解决办法
3244
查看次数

检查用户是否在GPS附近的路线检查点

情况如下:

我有一个用户将运行的预定GPS路线.该路线有一些检查点,用户应该通过所有这些检查站(将它们视为赛车游戏检查点,以防止用户采取快捷方式).我需要确保用户通过所有检查点.我想确定一个将在检查点半径内考虑的区域,但我不希望它只是一个径向区域,它应该是一个考虑路径形式的区域.不明白吗?我也没有.看看这张画得很糟糕的图片,以便更好地理解它: 路线示例

黑线表示预定路径,蓝色球表示检查点,蓝色多边形表示所需区域.绿线是一个更精确的用户,红线是一个不太准确的用户(一个醉酒的家伙可能会驾驶?).两条线都应该在多边形内部,但是完全跳过路线的用户不应该.

我已经在这里看到一个函数来检查用户是否在这样的多边形内,但我需要知道如何计算多边形.

有什么建议?

编辑:

我正在考虑使用简单的distanceTo()函数来绘制一个假想的圆圈并检查用户是否在那里.这很好,因为实现和理解非常简单,而且很糟糕,因为为了确保最敏感的用户在检查点通过,我需要一个很大的半径,使正确的用户比预期更快地进入检查点区域.

只是让你们更好地了解情况,这是一个应该用于交通(汽车或公共汽车)的应用程序,检查点应该是划分你的路线的地标或地点,例如,交通堵塞开始的地方或停止.

gps routes geolocation

5
推荐指数
1
解决办法
1737
查看次数

RSpec忽略了控制器中的救援块

我有一个Rails控制器,它对数据库进行运行状况检查,如下所示:

def health_check
  begin
    status = ActiveRecord::Base.connected? ? 'UP' : 'DOWN'
  rescue
    status = 'DOWN'
  end
  render text: status
end
Run Code Online (Sandbox Code Playgroud)

我正在尝试为此创建一个RSpec控制器规范,正响应和负响应的规范都起作用,但是当我尝试测试救援块时,RSpec似乎忽略了它:

RSpec.describe(HealthCheckController) do
  context 'When the check raises an exception' do
    before :each do
      allow(ActiveRecord::Base).to receive(:connected?).and_raise(OCIException) # Using Oracle
    end

    it 'should render text DOWN' do
      # First attempt
      get :health_check
      expect(response.body).to eq 'DOWN'

      # Second attempt
      expect { get :health_check }.to raise_error
      expect(response.body).to eq 'DOWN'
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

我在it上面的块中(分别)使用了这两个代码尝试了规范。

首先,RSpec失败了:

 Failure/Error: get :health_check
     OCIException:
       OCIException
Run Code Online (Sandbox Code Playgroud)

第二,它也失败了,而是显示了更多“熟悉的”消息:

Failure/Error: …
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails ruby-on-rails-4

5
推荐指数
1
解决办法
472
查看次数

为整个Prawn PDF文档设置动态高度

当我尝试使用Prawn gem for Rails 生成文档时,我遇到了问题

我要做的是为我的pdf设置一个可变高度,因此根据数据库中的一些查询,PDF高度将会改变.我这样做是因为我需要单页PDF文档.

目前,我的代码如下所示:

pdf = Prawn::Document.new(page_size: [297.64, 419.53], margin: 0)

....

data = [ ["Header1", "Header2", "Header3", "Header4", "Header5", "Header6"] ]

// here is the variable data
cart.cart_products.each do |cp|
  arr = [
    cp.product_code,
    cp.product_description,
    cp.amount,
    cp.product_metric,
    cp.product_unit_value,
    cp.total_value
  ]

  data.push(arr)
end

// populating the table with data
pdf.table(data, :cell_style => {:border_width => 0}, :column_widths => [45, 80, 30, 42.36, 50, 50]) do |table|
  table.row(0).border_width = 0.1.mm
  table.row(0).font_style = :bold
  table.row(0).borders = [:bottom]
end

.... …
Run Code Online (Sandbox Code Playgroud)

pdf ruby-on-rails prawn

4
推荐指数
1
解决办法
869
查看次数

C++成员变量在构造函数后丢失值

我的一堂课遇到了问题.我有这两个类,GameApp和Simulation:

GameApp.h

#pragma once

#include "Simulation.h"

class Simulation;

class GameApp {

    static GameApp *instance;

public:

    ~GameApp(void);

    static GameApp *initializeContext(const char *gameTitle, const int windowWidth, const int windowHeight);

    //void setSimulation(Simulation &simulation) { *(this->simulation) = simulation; }
    Simulation *getSimulation() { return simulation; }

    static const int TARGET_FPS = 50; // Frames per second

private:

    GameApp(void);
    Simulation *simulation;

    double frameIntervalList[TARGET_FPS]; // A list containing the time to render the last 60 frames
    // Other stuff that doesn't matter
Run Code Online (Sandbox Code Playgroud)

Simulation.h

#pragma once

#include <vector> …
Run Code Online (Sandbox Code Playgroud)

c++ memory-management operator-overloading

1
推荐指数
1
解决办法
1303
查看次数

如何在Rails 3开发服务器上禁用控制台输出?

如何在Rails 3应用程序上禁用控制台输出?更具体地说,我想至少禁用Mailer输出,输出整个电子邮件内容,包括图片,使动作处理更慢(发送电子邮件需要大约10秒).

PS:我认为经济放缓是因为输出的,如果可以从其他来源,如缓慢的SMTP服务器(这是Gmail的自动取款机,所以没有.)或别的东西一样,请让我知道.

console performance ruby-on-rails mailer

0
推荐指数
1
解决办法
1610
查看次数