رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
برنامه نویسی با Android NDK
#1
برنامه نویسی با Android NDK

NDK شامل ابزاری است که کد های c/c++ را در لینوکس یا ویندوز برای پردازنده های ARM کامپایل می کند.
برای استفاده از NDK در محیط ویندوز به Cygwin نیاز داریم. Cygwin حجمی نزدیک دو برابر سیستم عامل ابونتو 11 (بیشتر از 1GB) دارد و ابزار های لینوکس را در ویندوز شبیه سازی می کند.
بنابرین استفاده از NDK در محیط لینوکسی مثل ابونتو منطقی تر به نظر می رسد. قبلا نرم افزار C4droid را معرفی کردیم و گفتیم که کدهای زبان c/c++ را درون سیستم عامل اندروید کامپایل می کند.
NDK همانند c4droid کد های c/c++ را برای اندروید کامپایل می کند و استفاده از آن به دلایل زیر بهتر است:
NDK شامل ابزار های مفیدی مانند دیباگر است.
NDK کد ها در کامپیوتر دسکتاپ کامپایل می کند و می تواند همراه با SDK استفاده شود.

ایجاد بستر لازم برای نوشتن اولین برنامه با NDK[یک فایل باینری ساده]
گوشی شما باید روت شده باشد.
این آموزش برای ubuntu 11 است.
ابتدا NDK را دانلود کنید.
محتویات NDK را در هارد کامپیوتر خود کپی کنید.
نوع معماری سیستم مقصد یکی از موارد زیر خواهد بود:

کد:

* arm-linux-androideabi-4.4.3 => targetting ARM-based Android devices * x86-4.4.3 => targetting x86-based Android devices

فرض کنید می خواهیم برای فرویو (2.2) کامپایل کنیم.
terminal را باز می کنیم و متغیر محیطی SYSROOT را مانند زیر مقداردهی می کنیم:

کد:

export NDK=[your ndk root directory]
export SYSROOT=$NDK/platforms/android-8/arch-arm


کامپایلر مورد نیازمان را در متغیر محیطی CC قرار می دهیم:

کد:

export CC="$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-gcc --sysroot=$SYSROOT"

برای کامپایل کردن برنامه از دستور زیر استفاده کنید:

کد:

CC -o NDKDemo NDKDemo.c

اگر برنامه بالا بدون اشتباه باشد در دایرکتوری جاری یک باینری به نام NDKDemo ایجاد می شود.

فایل را به گوشی انقال دهید و آن را اجرا کنید:


کد:

adb kill-server
adb start-server
adb root
adb push NDKDemo /sdcard
adb shell
cd /sdcard
chmod +x NDKDemo
./NDKDemo
Hello NDK world!

منبع

[عکس: <a href=www.Mojsazan.com.gif]" class="mycode_img" />
پاسخ
سپاس شده توسط


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  نصب android ndk & sdk worm 0 3,193 07-31-2015, 02:08 PM
آخرین ارسال: worm
  ماژول نویسی برای هسته لینوکس مهرداد عباسی 14 22,318 04-04-2014, 03:54 AM
آخرین ارسال: digicom
  دانلود کتاب آموزش زبان برنامه نویسی برای سیستم های آندروید مهرداد عباسی 1 5,625 12-04-2013, 12:45 PM
آخرین ارسال: harry_persian138
  برنامه نویسی موبایل در لینوکس مهرداد عباسی 2 5,653 01-02-2012, 02:49 PM
آخرین ارسال: مهرداد عباسی
  Scala؛ جدیدترین زبان برنامه نویسی آندروید مهرداد عباسی 0 3,448 12-10-2011, 01:41 PM
آخرین ارسال: مهرداد عباسی
  اسکریپت نویسی در اندروید مهرداد عباسی 0 3,740 12-10-2011, 01:35 PM
آخرین ارسال: مهرداد عباسی
  شروع کار برای برنامه نویسی اندروید مهرداد عباسی 0 4,603 12-10-2011, 01:27 PM
آخرین ارسال: مهرداد عباسی
  می خواهم برای اندروید برنامه بنویسم؟!(قسمت 1) مهرداد عباسی 0 3,979 12-10-2011, 01:26 PM
آخرین ارسال: مهرداد عباسی
  چگونه در لینوکس برنامه نویسی کنم یا شروع برنامه نویسی در لینوکس ؟ مهرداد عباسی 0 3,520 09-09-2011, 03:00 PM
آخرین ارسال: مهرداد عباسی
  D-Bus 1.0 در لینوکس رابط برنامه نویسی بین برنامه ها را ایجاد می کند مهرداد عباسی 0 3,296 09-09-2011, 02:58 PM
آخرین ارسال: مهرداد عباسی

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان