in PlayAssetDelivery/NativeSample/Teapot/src/main/cpp/TexturedTeapotRender.cpp [169:211]
void TexturedTeapotRender::UpdateButton() {
JNIEnv *jni;
app_->activity->vm->AttachCurrentThread(&jni, NULL);
// Default class retrieval
jclass clazz = jni->GetObjectClass(app_->activity->clazz);
jmethodID methodID = jni->GetMethodID(clazz, "updateButtons", "()I");
jint val = jni->CallIntMethod(app_->activity->clazz, methodID);
int buttonCode = (int) val;
app_->activity->vm->DetachCurrentThread();
switch (buttonCode) {
case 0:
break;
case 1:SelectAssetPack(app_, "install_time_pack");
break;
case 2:SelectAssetPack(app_, "on_demand_pack");
break;
case 3:SelectAssetPack(app_, "fast_follow_pack");
break;
case 4:RequestInfo(app_);
break;
case 5:RequestDownload(app_);
PrintDownloadState(app_);
break;
case 6:PauseDownload(app_);
break;
case 7:ResumeDownload(app_);
break;
case 8:PrintLocation(app_);
break;
case 9:ShowCellularDataConfirmation(app_);
break;
default:LOGW("Wrong button code");
break;
}
if (GetDownloadState() == ASSET_PACK_DOWNLOAD_COMPLETED
|| strcmp(GetCurrentPackName(), "install_time_pack") == 0) {
renderPack = GetCurrentPackName();
}
return;
}