我有下一个问题。我有一个继承自Application的类。在这个课程中,我会跟踪android终端的gps位置。我需要在某些情况发生时发出警报,之后我需要启动一个活动(表单)供用户做出决定。
我正在使用正常的代码:
public class FondeoApplication extends Application{
.....
private void lanzaAlerta(){
mediaPlayer.start();
Intent intent = new Intent(FondeoApplication.this, AlertaActivity.class);
startActivity(intent);
}
但是下一次我得到了一个例外:
Thread [<1> main] (Suspended (exception AndroidRuntimeException))
ContextImpl.startActivity(Intent) line: 822
FondeoApplication(ContextWrapper).startActivity(Intent) line: 276
FondeoApplication.lanzaAlerta() line: 199
FondeoApplication.checkPosition(Location) line: 190
FondeoApplication.access$5(FondeoApplication, Location) line: 179
FondeoApplication$1.onLocationChanged(Location) line: 171
LocationManager$ListenerTransport._handleMessage(Message) line: 227
LocationManager$ListenerTransport.access$000(LocationManager$ListenerTransport, Message) line: 160
LocationManager$ListenerTransport$1.handleMessage(Message) line: 176
LocationManager$ListenerTransport$1(Handler).dispatchMessage(Message) line: 99
Looper.loop() line: 132
ActivityThread.main(String[]) line: 4123
Method.invokeNative(Object, Object[], Class, Class[], Class, int, boolean) line: not available [native method]
Method.invoke(Object, Object...) line: 491
ZygoteInit$MethodAndArgsCaller.run() line: 841
ZygoteInit.main(String[]) line: 599
NativeStart.main(String[]) line: not available [native method]
我试图从一个继承自Activity的对象启动活动,一切正常,所以我想问题是我正在尝试从Application对象启动一个活动。
有谁知道实现这个目标的正确方法?
也许我没有很好地关注整个应用程序。但我知道保持一些代码在后台工作的唯一方法是使用Application对象。如果有人知道更好的方式,请告诉我。
提前致谢。
答案 0 :(得分:1)
您是否尝试过将Intent Flags设置为FLAG_ACTIVITY_NEW_TASK?
create_table "payment_options", force: :cascade do |t|
t.integer "amount"
t.text "description"
t.string "title"
t.boolean "user_accessible", default: true
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end
create_table "payments", force: :cascade do |t|
t.string "email"
t.string "token"
t.integer "question_id"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.integer "payment_option_id"
end
add_index "payments", ["payment_option_id"], name: "index_payments_on_payment_option_id"
add_index "payments", ["question_id"], name: "index_payments_on_question_id"