2011-04-18 14 views
22
ben kodundan uygulamanın debuggable özellik değerini almak çalışıyorum

:Android 'ayıklaması' varsayılan değer

packageInfo = context.getPackageManager().getPackageInfo(packageName, 0);   
int flags = packageInfo.applicationInfo.flags; 
isDebugMode = (flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0; 

Ve debuggable nitelik tezahür belirtilen değilken bu kod o kadar doğrudur tanımlayan fark etmiş. Ve belgeler varsayılan olarak yanlış olduğunu söylüyor.

Neyin var? SDK Tools itibaren

cevap

73

: (SDK Araçlar, Revizyon 8 (Aralık 2010)) gerçek bir hata ayıklama derlemesi için

destek. Geliştiriciler artık manifest'te <application> etiketine android:debuggable öznitelik eklemek gerekir - inşa etmek araçları otomatik niteliğini ekleyin. Eclipse/ADT olarak, tüm artırımlı ayıklama kurar olduğu varsayılır oluşturur ve bu nedenle araçları android:debuggable="true" yerleştirin. , imzalı bir sürüm yapısı dışa aktarıldığında, özniteliğini eklemez. Karınca , bir ant debug komut otomatik android ekler: ayıklaması = "true" niteliğini, iken ant release yapmaz. android ise: ayıklaması = "true" elle ardından setidir ant release aslında bir hata ayıklama yapı yerine, bir serbest bırakma yapı yapacağız.

+0

gradle 2018 hakkında herhangi bir bilgi var mı? Aynı hikaye – tieorange