0

我尝试将 Sybase Unwired Platform 与生成的 Android 代码一起使用。我在以下代码中有例外:

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);    

Application app = Application.getInstance();

String AppName = "timesheets";

if (app.getApplicationIdentifier() == null)
    app.setApplicationIdentifier(AppName);

if (app.getApplicationContext() == null)
    app.setApplicationContext(this); //Place where app crashes

调试窗口看起来像调试窗口

开始执行该行后的所有崩溃:

崩溃消息框

Android 版本为 4.1.2 (API 16)

为什么会崩溃?

4

4 回答 4

0

尝试这个:

 app.setApplicationContext(getApplicationContext());
于 2014-06-04T11:31:19.760 回答
0

我将来源更正为更清晰的形式:

com.sybase.mobile.Application app = com.sybase.mobile.Application.getInstance();

String AppName = "timesheets";

if (app.getApplicationIdentifier() == null)
   app.setApplicationIdentifier(AppName);

if (app.getApplicationContext() == null)
   app.setApplicationContext(this);
于 2013-12-20T10:16:24.913 回答
0

我以前在 Android & SUP 2.1 中做的是 Application.getInstance().setApplicationContext(getApplicationContext());

我看到您仍在将活动作为上下文传递。尝试像我在上面的行中所写的那样传递应用程序上下文。

于 2014-04-08T14:51:29.277 回答
0

我什至不知道 Sybase 是什么,但我不认为将应用程序上下文设置为 Activity 是个好主意。this指的是Activity,不是吗?

实际上,我什至在 Android API 中都找不到该方法:

Application.setApplicationContext(this)

看这里: Application and ContextWrapper and Context

你想通过这条线存档什么?

于 2013-12-19T11:51:47.723 回答