Open
Description
Hello,
I've tried to use code from README only to find that it crashes when trying to initialize TTS engine. To workaround this, I've used custom config with ShowTts option disabled:
val folioReader = FolioReader.getInstance(applicationContext)
var config = Config().setShowTts(false)
folioReader.setConfig(config, true)
folioReader.openBook(R.raw.test)
Despite this, library still tries to create TTS engine (not quite possible on eBook reader with no speakers) and crashes:
08-11 21:33:48.190 6187-6187/package E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NullPointerException
at com.folioreader.ui.folio.mediaoverlay.MediaController$2.onInit(MediaController.java:113)
at android.speech.tts.TextToSpeech.dispatchOnInit(TextToSpeech.java:640)
at android.speech.tts.TextToSpeech.initTts(TextToSpeech.java:619)
at android.speech.tts.TextToSpeech.<init>(TextToSpeech.java:553)
at android.speech.tts.TextToSpeech.<init>(TextToSpeech.java:527)
at android.speech.tts.TextToSpeech.<init>(TextToSpeech.java:512)
at com.folioreader.ui.folio.mediaoverlay.MediaController.setTextToSpeech(MediaController.java:105)
at com.folioreader.ui.folio.fragment.FolioPageFragment.onCreateView(FolioPageFragment.java:188)
at android.support.v4.app.Fragment.performCreateView(Fragment.java:2346)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1428)
at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1759)
at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1827)
at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:797)
at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2596)
at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2383)
at android.support.v4.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManager.java:2338)
at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:2215)
at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:649)
at android.support.v4.app.FragmentStatePagerAdapter.finishUpdate(FragmentStatePagerAdapter.java:167)
at com.folioreader.view.DirectionalViewpager.populate(DirectionalViewpager.java:1327)
at com.folioreader.view.DirectionalViewpager.populate(DirectionalViewpager.java:1105)
at com.folioreader.view.DirectionalViewpager.setAdapter(DirectionalViewpager.java:501)
at com.folioreader.ui.folio.activity.FolioActivity.configFolio(FolioActivity.java:388)
at com.folioreader.ui.folio.activity.FolioActivity.onLoadPublication(FolioActivity.java:339)
at com.folioreader.ui.folio.presenter.MainPresenter.onReceivePublication(MainPresenter.java:25)
at com.folioreader.ui.base.ManifestTask.onPostExecute(ManifestTask.java:68)
at com.folioreader.ui.base.ManifestTask.onPostExecute(ManifestTask.java:26)
at android.os.AsyncTask.finish(AsyncTask.java:631)
at android.os.AsyncTask.access$600(AsyncTask.java:177)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5041)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
at dalvik.system.NativeStart.main(Native Method)