我正在尝试为我们的研究小组正在为iPhone工作的项目构建QRCodeReader
。经过大量研究后,我发现该程序名为QuickMark
。该程序自动扫描QRCodes。它似乎做的是加载UIImagePicker
并从相机读取数据。我怀疑它正在使用UIGetScreenImage
并从相机中截取并解码它。
现在我尝试使用3.1 iPhone API中的新takepicture()
方法,但似乎无法做到以上所做的事情,即每隔一秒左右拍摄照片,默默无闻。现在我听说UIGetScreenImage
可能不合法,如果他们使用它,Apple会转身并拒绝访问你的应用程序。所以,我的问题是:
a)Quickmark
(或任何其他允许的应用)使用UIGetScreenImage()
,如果是,是否合法,
b)takepicture()
方法是否可以做同样的事情?
答案 0 :(得分:2)
“法律”是一个非常模糊的术语,但我认为你的意思是该应用程序会被拒绝。有一个可能导致应用程序拒绝的清单,但最灰色的区域之一是使用私有标头。谷歌在他们的搜索应用程序中侥幸逃脱了它,但是互联网在愤怒中肆虐了几个月,而人们写了非常严厉的博客托管。最重要的是,你可以随心所欲,但如果你被抓住,祝你好运。
API几乎按照它们的工作方式工作,它应该足够简单,可以使用takepicture将调用循环到NSTimer,只需要小心你的工作方式,看起来像是一个沉重的过程对我来说。
答案 1 :(得分:1)
您将因使用UIGetScreenImage()而拒绝您的应用。
答案 2 :(得分:1)
RedLaser绝对使用UIGetScreenImage()。快速浏览一下库中的符号就可以确认它。
答案 3 :(得分:0)
我的应用程序因使用此调用而被拒绝(今天)。 :(我正在寻找新的解决方案,因为我输入...
答案 4 :(得分:0)
http://www.redlaser.com/SDK.aspx
这里他们暗示已经使用过这个功能,参考这个页面。
答案 5 :(得分:0)
现在应该更新某些内容了吗?
UIGetScreenImage现在应该是合法的。
答案 6 :(得分:0)
有一种方法可以在不使用UIImagePickerController或UIGetScreenImage()的情况下从相机捕获视频数据。
它自AVFoundation Framework中的iOS 4.0开始提供。 see here how.