2010-08-02 13 views
5

Birkaç gün önce iPhone platformunun geliştirilmesini denemeye başladım ve çok görevli yeteneklerini okurken çok yararlı olabilecek "görev tamamlama" özelliğini öğrendim.iPhone Görev Tamamlama

Biraz araştırdım, developer.apple.com/iphone adresindeki belgeleri okuyabiliyorum, ancak yine de bir şey bulamadım: bu görevin tamamlanmasının bir döngü (muhtemelen sonsuz) olması için bir yol var mı, yoksa Her 10 dakikada bir çalışan bir zamanlayıcı mı?

Ben "hile" gibi biliyorum ve muhtemelen bazı önlemler var, ama yine de, görevin tamamlanmasıyla :)

cevap

3

denemek için iyi bir şey olur? Hayır. Ancak, uygulamanızın arka plan özellikleri olan bir ses uygulaması olduğunu söyleyebilirsiniz, örneğin, kAudioSessionProperty_OverrideCategoryMixWithOthers özelliğiyle bir ses oturumu ayarlayın, ses çalmayan bazı sesleri değiştirin. Bu, kullanıcının çıkmasına, iPod'u başlatmasına veya neyi başlatmasına izin vermeyecek ve uygulamanız çalışmaya devam ederken normal olarak oynatılmasına izin verecektir.

Bunu örnek bir uygulamada denedim ve işe yarıyor. Ancak, bu şüpheli ve bunu tavsiye etmem. (Apple'ın bunu öğrenmesi durumunda reddedilmesi de olasıdır.)

+1

Aynı anda yalnızca bir arkaplan ses uygulamanız olabilir veya birden fazla mesajınız olabilir mi? Kullanıcı iPod uygulamasını veya Pandora gibi bir şeyi açarsa uygulamanızın etkin olmayacağı anlaşılıyor. – lucius

+1

Ses aygıtını açan uygulama, yukarıda tanımladığım özelliği kullandığı sürece, istediğiniz kadar çok ses kaynağına sahip olabilirsiniz. Ancak, iPod gibi uygulamalar yapmaz. Birisi sese erişmeyi istiyorsa oynatacaklar. Ancak, yukarıdaki özelliği kullanarak bir uygulama başlatırsanız, bu iPod'un erişim istediği halde oynatılmaya devam eder ve iPod erişime sahip olmadığı için ilgilenmez. Sistem, iPod'un çalmasına izin verecek kadar akıllıdır, ancak diğer uygulamalarla iyi karıştığından, diğer uygulamayı durdurmamak için yeterlidir. – jer

+0

Hala bunu deneyemedim, oldukça teorik bir soru, itiraf etmeliyim, ama uygulamayı arka planda açık tutmak için mükemmel bir yol gibi görünüyordu. Bu, özellikle bu uygulama tarafından çalıştırılan diğer uygulamalar veya farklı işlem görevleri ile kombine edildiğinde bataryayı çok çabuk boşaltacağı için üzücüdür. – wintermute