2011-10-06 26 views
9

Başvuru isteğinin sonlandırılması sırasında ANativeActivity_finish (durum> etkinlik) kodunu çağırmayı denedim. Bu ancak başvurum yeniden edilemez, işler ve LogCat aşağıdaki gösterir: Kullanıcı geri düğmesine vurduğundaAndroid NDK (yerel etkinlik) uygulama programlı olarak sonlandırmak için nasıl?

W/ActivityManager( 238): Duplicate finish request for HistoryRecord 

Her şey düzgün çalışması gibi görünüyor, ancak içinden çıkış komutu edebilmek için gerek benim uygulamam. Herhangi bir öneri?

cevap

4

Bu yoldur. Tam olarak nasıl yaptığınızı bilmiyorum, sanırım bu aramayı kodun sonunda yapıyorsunuz, sonra android_main'den geri dönüyorsunuz.

ANativeActivity_finish()'a sahip olmanız ve android_app->destroyRequested'a kadar olay döngüsüne devam etmeniz gerekir. Etkinlik işleyicinizde, uygun APP_CMD_STOP ve APP_CMD_DESTROY'u bulacaksınız.

Bu şekilde yapıyorum, artık sorun yok. Bunu çıkışla (0) yapardım, ama doğru olan bu değildi.

İlgili konular