文章生成PDF
FUSIONAPP 生成APK的调用浏览器下载PDF文件代码:
--
-- @author 寒歌
-- @description Main是应用的主模块,其中注册了应用运行中UI事件的回调、Activity生命周期的回调等
-- 你也可以在此编写启动事件代码,或控制应用运行逻辑、自定义应用UI等等。
-- @other 本模版已为你编写好基础事件,建议在阅读注释并理解相关参数意义后再进行扩展编写
--
-- ****默认导入包****
require "import"
import "android.os.*"
import "android.widget.*"
import "android.view.*"
-- ****不需要请删除****
-- @param data 侧滑栏列表的全部数据
-- @param recyclerView 侧滑栏列表控件
-- @param listIndex 点击的列表索引(点击的是第几个列表)
-- @param clickIndex 点击的项目索引(点击的第几个项目)
function onDrawerListItemClick(data, recyclerView, listIndex, itemIndex)
--侧滑栏列表的数据是二维结构,所以需要先获取到点击项目所在列表的数据
local listData = data.get(listIndex);
--获取到所在列表的数据后获取点击项目的数据
local itemData = listData.get(itemIndex);
--最后获取到点击的项目的标题
local itemTitle = itemData.getTitle();
--TODO :onDrawerListItemClick
end
-- @param keyword 搜索栏输入的文本
-- @description 顶栏搜索功能回调事件
function onSearchEvent(keyword)
--TODO:onSearchEvent
end
-- @param title 点击的菜单标题
-- @description 顶栏菜单项目点击回调事件
function onMenuItemClick(title)
--TODO:onMenuItemClick
end
--悬浮按钮点击事件
function onFloatingActionButtonClick(v)
--TODO:onFloatingActionButtonClick
end
local uiManager=activity.getUiManager()
local webView=uiManager.getCurrentFragment().getWebView()
webView.setDownloadListener{
onDownloadStart=function(url,userAgent,contentDisposition,mimetype,contentLength)
--即将下载文件时(链接,UA,处理,类型,大小)
local 大小=string.format("%.2f",contentLength/1048576).."MB"
系统下载(webView.getTitle()..'.pdf',url)
print("正在下载:"..webView.getTitle())
end
}
function 系统下载(文件名,下载链接)
import "android.content.Context"
import "android.net.Uri"
import "android.app.DownloadManager"
downloadManager=activity.getSystemService(Context.DOWNLOAD_SERVICE);
url=Uri.parse(下载链接);
request=DownloadManager.Request(url);
request.setTitle(文件名);--通知标题
request.setDescription("正在下载");--通知描述
--request.setMimeType("application/cn.trinea.download.file");
--设置下载的文件类型,这里下载的APP
request.setMimeType("application/vnd.android.package-archive");
--wifi,移动网络(数据流量)都可以下载
request.setAllowedNetworkTypes(DownloadManager.Request.NETWORK_MOBILE|DownloadManager.Request.NETWORK_WIFI);
--存放文件夹,下载文件名
request.setDestinationInExternalPublicDir("Download",文件名);
--通知提示,VISIBILITY_VISIBLE_NOTIFY_COMPLETED表示下载完成后显示通知栏提示。VISIBILITY_HIDDEN表示不显示任何通知栏提示
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
downloadManager.enqueue(request);
end