2009-10-07 10 views
5

Araştırma grubumuzun iPhone için üzerinde çalıştığı bir proje için QRCodeReader kurmaya çalışıyorum. Çok araştırmadan sonra QuickMark isimli programı buldum. Bu program QRCodes için otomatik olarak tarar. Yapılması gereken şey UIImagePicker'u yüklemek ve kameradan veri okumaktır. UIGetScreenImage kullanıyor ve kameradan bir ekran görüntüsü alıp deşifre ettiğinden şüpheleniyorum.takepicture() vs UIGetScreenImage()

Şimdi, 3.1 iPhone API'sinden yeni takepicture() yöntemini kullanmayı denedim, ancak bu, yukarıdaki işlemlerin her saniye veya daha sessiz bir şekilde fotoğraf çektiği şeyi yapamayacak gibi görünüyor. Şimdi, UIGetScreenImage'un belki de yasal olmadığını ve Apple'ın bunu kullanması durumunda uygulamanızın erişimini ve erişimi reddedeceğini duymuştum. Yani, sorularım şunlardır:

a) UIGetScreenImage() kullanılarak Quickmark (veya başka bir izin uygulaması) mi ve eğer öyleyse, o)

b hukuki ve aynı tür yapmak takepicture() yöntemi için mümkün olacağını ise şeyden mi?

cevap

1

RedLaser kesinlikle. onların kütüphanede semboller hızlı bir bakış bunu doğruluyor. UIGetScreenImage() kullanıyor

2

"Legal", gerçekten belirsiz bir terimdir, ama demek istediğim, uygulamanın reddedileceğini düşünüyorum. Uygulama reddine neden olabilecek şeylerin bir listesi var, ama gri alanların en grilerinden biri özel başlıkların kullanımı. Google, arama uygulamasında bunu kaçırdı, ancak insanlar birkaç aydır öfkelenerek, insanlar çok sert bir şekilde düpedüz bloglar yazdı. Alt satır, ne istersen yapabilirsin, ama yakalanırsan sana iyi şanslar.

API'lar çalıştıkları şekilde çalışır, takepicture numaralı telefona bir NSTimer numaralı telefona çağrı yapmak için yeterince basit olmalıdır, nasıl yaptığınıza dikkat edin, bana ağır bir işlem gibi görünün.

+0

TakePicture çağrısı gerçekten sessiz değil ve bu uygulama için çok yararlı değil; Sessiz hale getirilebilir ve hareket/ölçek ekranına (vb.) taşınamazsa, bu harika olur. Benim endişem, bu konuda başka bir yol göremediğim için, QuickMark'ın bundan kurtulduğu anlaşılıyor. – Oni

+1

Evet, yasal olarak "Apple'ın Draconian tanrıları tarafından App store kullanımı için onaylandı" anlamına geliyordu;) – Oni

+0

Son Teknik Görüşmelerde bir Apple temsilcisiyle konuştu ... o, daha hızlı bir şekilde – Oni

0

Bu çağrıyı kullandığım için başvurum reddedildi (bugün). :(Ben ... Ben yazarken yeni bir çözüm arıyorum

+0

RedLaser'ın da benzer bir tekniği kullandığını ancak uygulamalarına izin verildiğini fark ettim. Bu – Oni

+0

için standart bir teknik olmalı, hemen hemen her şey için izin verdiler, şimdi personelin işe yaradığını düşünüyorum ve kuralların uygulanmasında sıkılaşıyorlar. kurallar her zaman oradaydı, sadece şimdi daha fazla dikkat ettiklerini düşünüyorum – slf

+0

Yukarıda ve aşağıda belirtildiği gibi, Redlaser ve Quickmark bunun nasıl yapılacağını anladılar, bu yüzden ekranı yakalamak için yasal bir yol olmalı. TakePicture çağrısı, her resim alındığında bir ses çıkardığı ve (inanıyorum) görüntülerle yapılan işlerin (görüntü işlemeye çalışan bir iş parçacığında yönetilmesi zor görünen) didFinishPickingMediaWithInfo olduğu için çalışmaz. UIGetScreenImage hile yaptı ... şimdi ne ?! – jamey

1

için bunları uygulama UIGetScreenImage kullandığı için reddedildi alacak(). Burada

+0

Bu doğru olamaz, çünkü RedLaser ve Quickmark'ın bu tekniği kullanmasından neredeyse% 100 emin olduğum için. Gerçekten, bu iki şirketten de teyit almam gerekiyor, ancak hiç kimse göremiyor. – Oni

0

şey şimdi?

güncellenmelidir

UIGetScreenImage şu anda yasal olmalı.

+1

Artık değil: http://www.tuaw.com/2010/07/21/devsugar-rip-uigetscreenimage/ – macbirdie

0

UIImagePickerController veya UIGetScreenImage() kullanmadan kameradan video verileri yakalamanın bir yolu vardır.
AVFoundation Framework'de iOS 4.0'dan beri kullanılabilir. see here how.

İlgili konular