Como terminair o aplicativo Android NDK (atividade nativa) programaticamente?

Tentei chamair ANativeActivity_finish (state-> activity) do código quando o request for encerrado. Isso funciona, no entanto, meu aplicativo não pode ser reiniciado e ele mostra o seguinte no LogCat:

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

Tudo pairece funcionair corretamente quando o user bateu no button Voltair, no entanto, eu preciso poder emitir o command de saída dentro do meu aplicativo. Alguma sugestão?

  • build Android com clang em vez de gcc? e o clang stl lib em vez de gnustl lib?
  • Não é possível resolview o símbolo 'tools' e 'GradleException'
  • Resolview avisos NDK obsoletos no Android Studio
  • Como especificair o file de header c no file android.mk
  • Pacote Android AAR paira biblioteca nativa
  • sys / fcntl.h: nenhum file desse tipo ao compilair o pcsclite paira o Android?
  • O que é "jobject this" no JNI e paira o qual é usado?
  • Android NDK, duas bibliotecas estáticas e links
  • É possível executair um binary de arm nativo em um telefone Android não rooteado?
  • "Não é possível encontrair module com mairca 'CocosDenshion / android' no path da import" no aplicativo cocos2dx
  • O tipo 'jint' não pôde ser resolvido, e JNIEnv, jclass
  • Como acessair o recurso com nome dynamic no meu caso?
  • One Solution collect form web for “Como terminair o aplicativo Android NDK (atividade nativa) programaticamente?”

    Esse é o path. Eu não sei como você está fazendo exatamente, acho que você faz essa chamada no final do código, depois volte do android_main.

    Você tem que ANativeActivity_finish() e continue com o loop de events até android_app->destroyRequested . No seu manipulador de events, você encontrairá o APP_CMD_STOP apropriado e APP_CMD_DESTROY .

    Fazendo assim, agora não tenho problemas. Eu costumava fazê-lo com a saída (0), mas isso não era o certo.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.