KwikShelf Plugin
BookShelfEmbedded - KwikShelf
You find the copy script to collect the published lua files of BookTOC, Book01, Book02. The script copies the files to App folder.
- copy.bat or copy.command
Then run main.lua
├─App
│ ├─book01
│ ├─book02
│ └─TOC
├─extlib
├─lib
build.settings
config.lua
main.lua
copy.bat
copy.command
main.lua is just one line to load “TOC” of App. That’s all.
require("plugin.KwikShelf").start("TOC", 1)
this project is not a normal Kwik project. You need a text edtitor to edit main.lua if you like to change it. All you have to do is just to write the one line of code. App folders contains the build4 files from BookTOC, Book01 and Book02.
Also you need to add your icons files.
copy.bat copy.commnad
book01 and book02 are downloadable.

However if you do not check the mark in Downloadable Book Project checkbox. The book asset must be embedded in the master app.
Please notice the following part in the script of copy
-
copy.bat/copy.command MyCopy func removes the asses folder for normal downloadable projects
MAC rm -d -R App/$2/assets Win rmdir /s /q App\%2\assets
-
the copying line for BookTOC does not remove the asset folder. So if a book is not downloadable, use the same lines of codes as BookTOC
MAC cp -R ../BookTOC/build4 App/TOC rm App/TOC/main.lua rm App/TOC/config.lua rm App/TOC/build.settings rm App/TOC/assemble.command rm App/TOC/assemble.bat WIN xcopy ..\BookTOC\build4 App\TOC /D /S /R /Y /I /K del App\TOC\main.lua del App\TOC\config.lua del App\TOC\build.settings del App\TOC\assemble.command del App\TOC\assemble.bat
KwikShelf Plugin
The sample contains Kwikshelf plugin for trial.
Kwikshelf plugin is available from KwikShelf - the corona plugi markket.
the book01 and book02 projects are configured as downloadable book project. From the TOC project, the book assets are downloaded if user purchase the book.
If you uncheck the downloadable book project check box, you need to copy the assets folders of the project to the App folder. For instance, If book01 and book02 are not downloadable project, you manually copy the assets folder to App/book01, App/book02 folder and then you may use the codes like this to open book01.
local ui = require("components.store.UI")
ui.gotoSceneBook("book01")
build.settings
You may need to add permissions for your app. The following permissions are default
android = {
usesPermissions = {
"android.permission.INTERNET",
"android.permission.WRITE_EXTERNAL_STORAGE",
"com.android.vending.BILLING",
},
},
config.lua
please add google license key for android device.
license =
{
google =
{
key = "Please set your google license key",
},
},
more information is here http://kwiksher.com/doc/tools/IAP/IAP_android
copy scripts
copy.bat (WIN)
rm -d -R App
mkdir App
cp -R ../BookTOC/build4 App/TOC
rm App/TOC/main.lua
rm App/TOC/config.lua
rm App/TOC/build.settings
rm App/TOC/assemble.command
rm App/TOC/assemble.bat
MyCopy(){
cp -R ../$1/build4 App/$2
rm -d -R App/$2/assets
rm App/$2/main.lua
rm App/$2/config.lua
rm App/$2/build.settings
rm App/$2/assemble.command
rm App/$2/assemble.bat
}
MyCopy Book01 book01
MyCopy Book02 book02
copy.command (MAC)
@echo off
rmdir /s /q App
mkdir App
xcopy ..\BookTOC\build4 App\TOC /D /S /R /Y /I /K
del App\TOC\main.lua
del App\TOC\config.lua
del App\TOC\build.settings
del App\TOC\assemble.command
del App\TOC\assemble.bat
call :MyCopy Book01 book01
call :MyCopy Book02 book02
exit /b
:MyCopy
echo %1
xcopy ..\%1\build4 App\%2 /D /S /R /Y /I /K
rmdir /s /q App\%2\assets
del App\%2\main.lua
del App\%2\config.lua
del App\%2\build.settings
del App\%2\assemble.command
del App\%2\assemble.bat
exit /b