gstreamer-sdk-android-arm-debug-2013.6
ile birlikte gelen eğiticileri oluşturmaya çalışıyorum. src/jni
dizinindeki (eğitim 1 projesi) Android.mk
dosyası, GSTREAMER_SDK_ROOT
gibi ortam değişkenlerine başvurur. Okuduğum kadarıyla, Android Studio, oluşturma değişkenlerine ortam değişkenlerini kullanmıyor/geçirmiyor. Makefile'leri değiştirmek ve derleme komut dosyalarının gerektirdiği anahtar/değer çiftlerini tanımlamak/almak için en iyi uygulama var mı?Android Studio kullanarak GStreamer eğiticileri oluşturulamıyor
cevap
Tamam, bir çalışma çözümüm var. Ortam değişkenlerini ndk-build
(veya Exec tarafından yakalanan başka herhangi bir işlem) geçirebilirsiniz. Benim durumumda bunları hem clean
hem de build
görevler için ayarlamak istedim. Bu tasks.withType(Exec)
kullanılarak yapılır. Tüm Exec görevleri için ortam parametresi burada ayarlanır. GSTREAMER_SDK_ROOT
için
, ben local.properties
bir giriş ekledi:
gst.dir=/Users/svenyonson/sdk/gstreamer-sdk-android-arm-debug-2013.6
PATH
için, ben kökenli işlemi için varsayılan kullanılır ve gerekeni eklendi.
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion "20.0.0"
defaultConfig {
applicationId "com.gst_sdk_tutorials.tutorial_1"
minSdkVersion 19
targetSdkVersion 19
}
sourceSets.main {
jni.srcDirs = []
jniLibs.srcDir 'src/main/libs'
java.srcDirs += 'src/main/jni/src'
}
tasks.withType(Exec) {
def localProperties = new Properties()
localProperties.load(project.rootProject.file('local.properties').newDataInputStream())
def gstDir = localProperties.getProperty('gst.dir')
environment = [:]
environment['PATH'] = System.getenv("PATH")+ ":/usr/local/bin"
environment['GSTREAMER_SDK_ROOT'] = gstDir
}
task buildNative(type: Exec, description: 'Compile JNI source via NDK') {
def ndkDir = project.plugins.findPlugin('com.android.application').getNdkFolder()
commandLine "$ndkDir/ndk-build",
'-C', file('src/main/jni').absolutePath,
'-j', Runtime.runtime.availableProcessors(),
'all',
'NDK_DEBUG=1',
'V=1',
'APP_PLATFORM=android-19'
}
task cleanNative(type: Exec, description: 'Clean JNI object files') {
def ndkDir = project.plugins.findPlugin('com.android.application').getNdkFolder()
commandLine "$ndkDir/ndk-build",
'-C', file('src/main/jni').absolutePath,
'clean'
}
clean.dependsOn 'cleanNative'
tasks.withType(JavaCompile) {
compileTask -> compileTask.dependsOn buildNative
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
proje şimdi oluşur ve çalışır: Burada
build.gradle
bir çalışma versiyonudur.
sdk.dir=/Users/svenyonson/sdk/android-sdk
ndk.dir=/Users/svenyonson/sdk/android-ndk-r9d
gst.dir=/Users/svenyonson/sdk/gstreamer-sdk-android-arm-debug-2013.6
Bir şey daha:: Bu örnekler android-ndk-r10d
kullanarak inşa etmeyeceğini yapmanız gereken tek başka şeyler local.properties için ndk.dir
eklemektir. android-ndk-r9d
'u kullandığınızdan emin olun.
- 1. Gstreamer
- 2. Videoyu WebTime GStreamer kullanarak dönüştürme
- 3. Gstreamer kullanarak akış içeriği yürütme
- 4. JSON android studio kullanarak
- 5. Expresso eğiticileri
- 6. Kurento: toplantı oluşturulamıyor
- 7. Chrome eğiticileri - seçenekler sayfası
- 8. Entity Framework Video eğiticileri
- 9. Meteor eğiticileri (özellikle Ubuntu'da)
- 10. JMS ve JMX eğiticileri?
- 11. ADO.NET Entity Framework eğiticileri
- 12. Android - Basit bir dikdörtgen şekli oluşturulamıyor ... DesteklenmeyenÖdemeException?
- 13. Android studio kullanarak MySQL veritabanına veri eklenemiyor
- 14. Gstreamer RTSP Sunucu
- 15. Qt 5.6 + multimedya + gstreamer
- 16. GStreamer videotestsrc RTP için
- 17. Android SDK 14 - GTV cihazı oluşturulamıyor
- 18. Android Destek Kitaplıkları neden projemde çalışmıyor? Android Studio kullanarak
- 19. Android: android studio kullanarak görüntüyü görüntülemek için bitmap kullanırken hata
- 20. Android studio kullanarak android uygulaması nasıl test edilir?
- 21. Android Studio
- 22. Android Studio:
- 23. Android Studio
- 24. Android Studio
- 25. Android Studio:
- 26. Android Studio
- 27. Android Studio
- 28. Android Studio -
- 29. android studio
- 30. Android Studio
Android Studio, Makefiles ile çalışamaz, bu yüzden onu bir metin düzenleyiciden başka bir şey olarak kullanmak istiyorsanız Gradle derleme dosyaları oluşturmanız gerekir. –
Android Studio ile mupdf gibi diğer projelerde ndk bileşeni için makefiles kullanıyorum ve iyi çalışıyor. Gördüğüm tek sorun, GStreamer öğreticileri için Android.mk tarafından kullanılan bu ortam değişkenleri ile ilgilidir. Android.mk dosyalarındaki değerleri kodlayabilirim ve yapacağıma gayet eminim - ama sanırım daha iyi bir yol var. – svenyonson
Bu öğreticilerin yalnızca Gradle derleme dosyalarını kullanacak şekilde dönüştürülmesinin bir yolu varsa, bunun için her şeyden önce gelirim - ama nereden başlayacağımı bilmiyorum. – svenyonson