Bu bölüm, bir AIR uygulamasının işletim sistemi dosya ilişkilendirmelerini yönetmek, kullanıcı etkinliğini saptamak ve Adobe® AIR® çalışma zamanı hakkında bilgi almak için kullandığı yolları tartışır.
Dosya ilişkilendirmelerini yönetme
Uygulamanız ve bir dosya türü arasındaki ilişkilendirmeler uygulama tanımlayıcıda bildirilmelidir. Yükleme işlemi sırasında, başka bir uygulama önceden varsayılan olarak olarak belirlenmediği sürece, AIR uygulama yükleyicisi AIR uygulamasını bildirilen tüm dosya türleri için varsayılan açılış uygulaması olarak ilişkilendirir. AIR uygulaması yükleme işlemi, var olan dosya türü ilişkilendirmesini geçersiz kılmaz. İlişkilendirmeyi başka bir uygulamadan devralmak için çalışma zamanında
NativeApplication.setAsDefaultApplication()
yöntemini çağırın.
Uygulamanız başladığında beklenen dosya ilişkilendirmelerinin yerinde olduğunu doğrulamak yararlı bir uygulamadır. Bunun nedeni, AIR uygulama yükleyicisinin var olan dosya ilişkilendirmelerini geçersiz kılmaması ve kullanıcı sistemindeki dosya ilişkilendirmelerinin her zaman değişebilir olmasıdır. Başka bir uygulama güncel dosya ilişkilendirmesine sahipse, var olan bir ilişkilendirmenin devralınmasından önce kullanıcının onayını almak yerinde bir uygulamadır.
NativeApplication sınıfının aşağıdaki yöntemleri, bir uygulamanın dosya ilişkilendirmelerini yönetmesine olanak verir. Yöntemlerden her biri, dosya türü uzantısını parametre olarak alır:
Yöntem
|
Açıklama
|
isSetAsDefaultApplication()
|
AIR uygulaması güncel olarak belirtilen dosya türüyle ilişkilendirilmişse true değerini döndürür.
|
setAsDefaultApplication()
|
AIR uygulaması ve dosya türü açık eylemi arasında ilişkilendirme oluşturur.
|
removeAsDefaultApplication()
|
AIR uygulaması ve dosya türü arasındaki ilişkilendirmeyi kaldırır.
|
getDefaultApplication()
|
Dosya türüyle güncel olarak ilişkilendirilmiş uygulama yolunu bildirir.
|
AIR, yalnızca ilk olarak uygulama tanımlayıcıda bildirilen dosya türlerine ilişkin ilişkilendirmeleri yönetebilir. Kullanıcı bu dosya türü ve uygulamanız arasındaki ilişkilendirmeyi elle oluşturmuş olsa bile, bildirilmemiş bir dosya türünün ilişkilendirmeleri hakkında bilgi alamazsınız. Uygulama tanımlayıcıda bildirilmemiş bir dosya türüne ilişkin uzantı aracılığıyla herhangi bir dosya ilişkilendirme yönetimi yönteminin çağırılması, uygulamanın çalışma zamanı istisnası vermesine neden olur.
Çalıştırma zamanı sürümü ve yama düzeyini alma
NativeApplication nesnesi, uygulamanın yürütülmekte olduğu çalışma zamanının sürümünü belirten
runtimeVersion
özelliğini içerir (
"1.0.5"
gibi bir dize). NativeApplication nesnesi ayrıca, çalışma zamanının yama düzeyini ifade eden
runtimePatchLevel
özelliğini de içerir (2960 gibi bir sayı). Aşağıdaki kod bu özellikleri kullanır:
trace(NativeApplication.nativeApplication.runtimeVersion);
trace(NativeApplication.nativeApplication.runtimePatchLevel);
AIR özelliklerini saptama
Adobe AIR uygulamasıyla paketlenen bir dosya için,
Security.sandboxType
özelliği
Security.APPLICATION
sabitiyle tanımlanan değere ayarlanır. Aşağıdaki kodda gösterildiği şekilde, bir dosyanın Adobe AIR güvenlik sanal alanında bulunuyor olup olmadığını temel alarak içerik (AIR'e özgü API'ler içerebilir veya içermeyebilir) yükleyebilirsiniz.
if (Security.sandboxType == Security.APPLICATION)
{
// Load SWF that contains AIR APIs
}
else
{
// Load SWF that does not contain AIR APIs
}
AIR uygulamasıyla yüklenmeyen tüm kaynaklar, bir web tarayıcısında Adobe® Flash® Player tarafından atanacağı güvenlik sanal alanlarının aynılarına atanır. Uzak kaynaklar, kaynak etki alanlarına göre sanal alanlara yerleştirilir ve yerel kaynaklar ağ iletişimiyle yerel, dosya sistemiyle yerel veya yerel güvenilir sanal alanlara yerleştirilir.
İçeriğin çalışma zamanında yürütülüp yürütülmediğini (ve bir tarayıcıda çalışan Flash Player'da çalışıp çalışmadığını) görmek için
Capabilities.playerType
statik özelliğinin
"Desktop"
olarak ayarlanıp ayarlanmadığını kontrol edebilirsiniz.
Daha fazla bilgi için bkz.
AIR güvenliği
.
Kullanıcı varlığını izleme
NativeApplication nesnesi, bir kullanıcının bilgisayarı ne zaman etkin olarak kullandığını saptamanıza yardımcı olan iki olay gönderir.
NativeApplication.idleThreshold
özelliğiyle belirlenen aralıkta fare veya klavye etkinliği saptanmadıysa, NativeApplication bir
userIdle
olayı gönderir. Bir sonraki klavye veya fare girdisi gerçekleştiğinde, NativeApplication nesnesi bir
userPresent
olayı gönderir.
idleThreshold
aralığı saniye cinsinden ölçülür ve 300 varsayılan değerine sahiptir (5 dakika). Ayrıca, son kullanıcı girdisinden itibaren geçen saniye sayısını da
NativeApplication.nativeApplication.lastUserInput
özelliğinden elde edebilirsiniz.
Aşağıdaki kod satırları, boşta kalma eşiğini 2 dakika olarak ayarlar ve hem
userIdle
hem de
userPresent
olayını dinler::
NativeApplication.nativeApplication.idleThreshold = 120;
NativeApplication.nativeApplication.addEventListener(Event.USER_IDLE, function(event:Event) {
trace("Idle");
});
NativeApplication.nativeApplication.addEventListener(Event.USER_PRESENT, function(event:Event) {
trace("Present");
});
Not:
Herhangi iki
userPresent
olayı arasında yalnızca bir
userIdle
olayı gönderilir.
|
|
|