小编SBe*_*413的帖子

SQLite同时读写

我已经阅读了很多主题,但无法找出问题的答案:是否可以同时读写?

我有后台线程更新一些数据,UI需要存储在DB中的小块数据.因此在UI线程中执行SELECT操作.但它会在更新过程中阻止.结果,UI冻结了几秒钟.

写作时有没有人能从DB中读取成功?


它可以在iPhone上读写DB.这种差异的原因是在本机sqlite函数上同步实现包装吗?

database sqlite multithreading android

24
推荐指数
1
解决办法
2万
查看次数

如何在SQLiteDatabase查询中测试游标是否为空

我有一个SQL表,它由以下代码创建:

public void onCreate(SQLiteDatabase db) {
    db.execSQL("CREATE TABLE " + TABLE_NAME + " (" + _ID
        + " INTEGER PRIMARY KEY AUTOINCREMENT, " + SUBJECT
        + " TEXT NOT NULL," + TOPIC + " TEXT NOT NULL, "
        + LECTURENUMBER + " TEXT NOT NULL, " + PAGENUMBER
        + " TEXT NOT NULL, " + DATE + " TEXT NOT NULL, " + _DATA
        + " TEXT NOT NULL);");
}
Run Code Online (Sandbox Code Playgroud)

我查询表如下:

String sql = "SELECT " + _ID + "," …
Run Code Online (Sandbox Code Playgroud)

java database sqlite android cursor

23
推荐指数
2
解决办法
5万
查看次数

的VerifyError; 期望方法控制器中的堆栈映射框.安全$ Security.authentify

我按照教程介绍Play框架,但它给了我一个错误:

执行异常VerifyError发生:期望方法控制器中的堆栈映射帧.安全$ Security.authentify(Ljava/lang/String; Ljava/lang/String;)Z偏移量为33

我不确定我做错了什么.我正在使用的代码(片段):

package controllers;

..

@With(Secure.class)
public class Application extends Controller 
{
    @Before
    public static void setConnectedUser() 
    {
        if (Security.isConnected()) 
        {
            User user = User.find("byEmail", Security.connected()).first();
            user.password = null;
            renderArgs.put("user", user);
        }
    }

    ...
Run Code Online (Sandbox Code Playgroud)

对于Security类:

package controllers;

import models.*;

public class Security extends Secure.Security {    
    static boolean authenticate(String username, String password) {
        return User.connect(username, password) != null;
    }
}
Run Code Online (Sandbox Code Playgroud)

我还将安全模块添加到dependencies.yml,它在重新启动Play框架后正确加载.我将安全模型添加到了我的路线中.Eclipse没有错误; 错误仅在执行时发生.Secure.Security类确实具有可用的公共静态isConnected方法.我正在使用最新版本的Play框架(1.2.2).

playframework

18
推荐指数
3
解决办法
8758
查看次数

如何在Android中禁用/启用LinearLayout上的所有子项

是否通过编程确定某个布局的所有子项?

例如,我有两个孩子的布局:

<LinearLayout android:layout_height="wrap_content"
        android:id="@+id/linearLayout1" android:layout_width="fill_parent">
        <SeekBar android:layout_height="wrap_content" android:id="@+id/seekBar1"
            android:layout_weight="1" android:layout_width="fill_parent"></SeekBar>
        <TextView android:id="@+id/textView2" android:text="TextView"
            android:layout_width="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge"
            android:layout_height="wrap_content"></TextView>
    </LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我想做的事情如下:

LinearLayout myLayout = (LinearLayout) findViewById(R.id.linearLayout1);
myLayout.setEnabled(false);
Run Code Online (Sandbox Code Playgroud)

为了禁用这两个textviews.

知道怎么样?

java android android-layout android-linearlayout

18
推荐指数
3
解决办法
3万
查看次数

Playframework安全模块:您如何"登录"以测试FunctionalTest中的安全控制器?

编辑:我正在使用Play!1.2版(生产版)

我想测试由安全模块类保护的控制器操作,因此我需要在测试我的控制器之前登录(否则我将被重定向到登录页面).

我在调用安全操作之前尝试登录.这是我的FunctionalTest的样子:

@Test
public void someTestOfASecuredAction() {
    Map<String, String> loginUserParams = new HashMap<String, String>(); 
    loginUserParams.put("username", "admin"); 
    loginUserParams.put("password", "admin");

    // Login here so the following request will be authenticated:
    Response response = POST("/login", loginUserParams);

    // The following is an action that requires an authenticated user:
    Map<String, String> params;
    params.put("someparam", "somevalue");
    response = POST("/some/secured/action", params);

    assertIsOk(response); // this always fails because it is a 302 redirecting to /login
}
Run Code Online (Sandbox Code Playgroud)

单步执行代码,我已经验证登录帖子是否有效 - 它会导致重定向响应,并将位置设置为主页(表示登录成功).

但随后在随后的安全行动调用中,我总是被重定向到"/ login"页面 - 表明我之前的登录没有坚持第二个POST请求.

查看FunctionalTest的源代码,我看到有一个@Before拦截器可以清除所有cookie.我尝试在我自己的中间超类中覆盖此截取(以保留cookie),但这也不起作用.

编辑:我把play.mvc.Before拦截器与org.junit.Before混淆了 - …

playframework

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

SQLite,如何获取数据库中的所有表名?

您认为从数据库获取所有表名并将其添加到列表的正确方法是什么?

现在就到了这么远:

final ArrayList<String> dirArray = new ArrayList<String>();

SqlHelper sqlHelper = new SqlHelper(this, "TK.db", null, 1);
SQLiteDatabase DB = sqlHelper.getWritableDatabase();
Cursor c = DB.rawQuery("SELECT name FROM sqlite_master WHERE type='table'", null);

c.moveToFirst();
while (c.isAfterLast() == false) {
   dirArray.add("n" + c.getColumnIndex("name"));
   c.moveToNext();
 }
c.close();
Run Code Online (Sandbox Code Playgroud)

但它输出一些"android_metadata"而不是我的表名.所以猜测查询有问题.

谢谢!

java database sqlite android

14
推荐指数
2
解决办法
2万
查看次数

Playframework是活动菜单项/路线

我想设置活动菜单项的样式,为此我需要比较当前的URL再次路由.我知道我可以在javascript中执行此操作,但我想知道其他人是如何在游戏中解决这个问题的.

有什么建议?

伪代码:

<a #{routeIsActive Application.index()} class="active"#{/if} href="@{Application.index()}">My Page</a> 
Run Code Online (Sandbox Code Playgroud)

playframework

13
推荐指数
2
解决办法
2492
查看次数

有没有办法在playframework的application.conf中替换环境变量?

有没有办法在剧中使用环境变量!application.conf文件?像这样的东西:

%prod.db.url=${env.DATABASE_JDBC_URL}
%prod.db.driver=org.postgresql.Driver
%prod.jpa.ddl=validate
Run Code Online (Sandbox Code Playgroud)

我不想在我的application.conf中对URL进行硬编码,因为它包含开发人员无权访问的凭据.

playframework

13
推荐指数
2
解决办法
5191
查看次数

部署游戏!框架应用程序

在命令之后play run,Play如何作为计算机上的主机启动?它是在幕后运行apache,tomcat还是其他?

如果我想让我的应用程序(使用play!framework构建)托管在例如apache上,那么这将是一件容易的事吗?

playframework

13
推荐指数
3
解决办法
7384
查看次数

播放框架2.0 - 意外异常 - 未找到密钥:来源

我在尝试启动Play 2.0应用时遇到了一条未找到密钥的错误消息.我实际上认为我没有改变任何东西,这个错误只是突然出现.其实我做了一件事.我打开文件夹target/scala-2.9.1/src_managed/main中的文件并关闭它(我没有更改任何内容,也没有保存或删除文件).但重新加载应用程序后,我收到此错误.知道我能做什么吗?

[info] play - 在端口9000上侦听HTTP ...

(服务器启动,使用Ctrl + D停止并返回控制台...)

[错误] {文件:/卷/ INPROG/03_Projects/06_Play_Applications /空间换艺术/}空间换艺术/编译:来源:没有找到关键:java.util.NoSuchElementException SOURCE [错误]应用 -

!内部服务器错误,请求[GET /] - >

play.api.UnexpectedException:意外异常[NoSuchElementException异常:键未找到:SOURCE]在sbt.PlayReloader $$匿名$ $$ 2 $ anonfun重载$ $$ 3 $ anonfun 2 $$ anonfun $ $申请11.apply(PlayReloader.scala:228) 〜[NA:NA]在sbt.PlayReloader $$匿名$ $$ 2 $ anonfun重载$ $$ 3 $ anonfun 2 $$ anonfun $ $申请11.apply(PlayReloader.scala:221)〜[NA:NA]在scala.Option.地图(Option.scala:133)〜[阶-library.jar:0.11.2]在sbt.PlayReloader $$匿名$ $$ 2 $ anonfun重载$ $$ 3 $ anonfun 2.适用(PlayReloader.scala:221)〜[呐:在sbt.PlayReloader $$匿名$ $$ 2 $ anonfun重载$ $$ 3 $ anonfun NA 2.适用(PlayReloader.scala:219)〜[NA:NA]在scala.Either $ LeftProjection.map(Either.scala:183 )〜[阶-library.jar:0.11.2] java.util.NoSuchElementException:键未找到:(MapLike.scala SOURCE在scala.collection.MapLike $ class.default:224)〜[阶-library.jar:0.11 .2] …

playframework

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