我有生成pdf的方法,并在调用方法时打开它。
generate_pdf()
file_location = File.join(Rho::RhoApplication.get_app_path('public'),'pdfs/File110.pdf')
System.open_url(file_location)
现在generate_pdf()
我有,
pdf = PDF::Writer.new
x = pdf.absolute_left_margin - 10
y = pdf.absolute_top_margin - 10
pdf.add_text(x,y,"Hello World",20)
file_location = File.join(Rho::RhoApplication.get_app_path('public'),'pdfs/File110.pdf')
pdf.save_as(file_location)
所以上面的代码只是第一次运行。第二次单击时,应用程序崩溃。 代码有什么问题?
答案 0 :(得分:1)
解决方案非常有趣。在我的一个项目中发生了这件事。
You are not closing the pdf after that is being opened by the application.
您需要关闭默认查看器中打开的pdf。
第二次单击时,应用程序尝试创建并存储在与以前相同的位置,但是当在某个默认阅读器中打开文件时,应用程序无法获得存储和崩溃的权限。
所以你可以提出的一点是,如果是这种情况,那么如果用户打开pdf并将其最小化会发生什么。所以那个时候,应用程序会崩溃。
但答案是NO
。崩溃只发生在RhoSimulator中,而不是模拟器或真实设备上。在设备上,没有关于权限的问题。
因此,您可以毫不紧张地继续发布应用程序。