Quote:
Originally Posted by trap000d
I'm not absolutely sure, but it seems they've moved everything to java and placed all in /opt/amazon/ebook/lib. I had no opportunity to look inside all jars so can't definitely confirm that code moved there too, but, e.g. all search bar buttons now are inside /opt/amazon/ebook/lib/searchbar-assets.jar and searchbar-resources-*-assets.jar
|
In 5.8.5, opt/amazon/ebook/booklet/com/amazon/kindle/kindlet/internal/resources/KindletBookletResources_pt.java:
Is this array of arrays:
Code:
private static final Object[][] H = new Object[][]{{"kindlet.crash.startup.message.pattern", "Houve um erro ao tentar abrir este item. Caso o problema persista, entre em contato com o servi\u00e7o de atendimento ao cliente do Kindle em www.kindle.com/support."}, {"kindlet.crash.shutdown.message.pattern", "Houve um erro ao tentar fechar este item. Caso o problema persista, entre em contato com o servi\u00e7o de atendimento ao cliente do Kindle em www.kindle.com/support."}, {"kindlet.crash.general.message.pattern", "Houve um erro com este item. Caso o problema persista, entre em contato com o servi\u00e7o de atendimento ao cliente do Kindle em www.kindle.com/support."}, {"kindlet.remove.message", "O item que estava aberto est\u00e1 agora indispon\u00edvel porque foi removido de seu Kindle enquanto estava no modo de unidade USB. Para acessar este item, baixe-o novamente da nuvem."}, {"kindlet.restart.framework.message", "O item n\u00e3o foi fechado corretamente. \u00c9 necess\u00e1rio reiniciar o Kindle. Se voc\u00ea n\u00e3o fechar esta caixa de di\u00e1logo, seu dispositivo ser\u00e1 reiniciado em {0,number,integer} segundos."}, {"kindlet.restart.framework.button", "reiniciar"}, {"kindlet.restart.framework.cancel.button", "cancelar"}, {"kindlet.restartnow.framework.message", "Ocorreu um erro com o item. O Kindle ser\u00e1 reiniciado em {0,number,integer} segundos."}, {"kindlet.upgrade.required.pattern", "O item que voc\u00ea tentou abrir \u00e9 incompat\u00edvel com este Kindle. Tente atualizar seu Kindle a partir do menu Configura\u00e7\u00f5es. Caso o problema persista, entre em contato com o servi\u00e7o de atendimento ao cliente do Kindle em www.kindle.com/support."}, {"kindlet.crash.lowmemory.message", "Ocorreu um erro com o item. Ele ser\u00e1 fechado e o Kindle pode ser reiniciado."}, {"kindlet.crash.unknown", "Ocorreu um erro e o item ser\u00e1 fechado."}, {"kindlet.capability.fail.pattern", "Seu Kindle n\u00e3o atende aos requisitos m\u00ednimos para executar este item. Entre em contato com o servi\u00e7o de atendimento ao cliente do Kindle em www.kindle.com/support."}, {"appmgrd.path", "com.lab126.appmgrd"}, {"appmgrd.start.cmd", "start"}, {"store.search.uri", "app://com.lab126.store?action=search&query={0}"}, {"store.detail.uri", "app://com.lab126.store?action=detail&asin={0}"}, {"store.open.uri", "app://com.lab126.store"}, {"store.open.failure", "Ocorreu um erro ao iniciar a Loja Kindle."}, {"kindlet.title.subtitle.format", "{0}: {1}"}};
IIRC, you want to start by changing:
Code:
{"store.open.uri", "app://com.lab126.store"}
To what you want run.
I suppose the other store.* things would need adjustment also.
According to notes in the files, the Amazon jars are not (yet) signed, but written as if they will be at some point in time.
Which means using JBPatch (which re-codes jar files as they are loaded) to re-purpose the store button.
See:
https://www.mobileread.com/forums/sho...d.php?t=175512
and the Wiki page linked from that post.
It would be nice if it where easier, and it may be, my Java knowledge is ancient and I only spent a few hours on looking at the de-compiled code.
(I de-compiled a copy of the entire ebook subtree using: cfr ::
http://www.benf.org/other/cfr/ in a one-line bash script)
Code:
for f in `ls -1 *.jar` ; do java -jar ../../cfr_0_118.jar $f --outputdir ./output/ ; done
- - - -
Ah, it is in booklet resources because the main page is a Booklet.
- - - -
We also have a tool for re-writing Java binaries:
https://www.mobileread.com/forums/sho...d.php?t=236780
Note: You can't (by site rules) post the re-written *.jar file here, but you could instead post the bytecode modification (the input to the editor) here along with directions on how to apply it.