بزرگترین مزایای استفاده از ELF این برنامه نویسی اندروید با سی شارپ است که از CPU، ABI یا سیستم عامل مستقل است و می توان از آن در هر مکانی برای بررسی هر شی ELF استفاده کرد. اگر ابزار gcc را از قبل نصب کرده اید، می توانید از sysytem readelf استفاده کنید. برای کاربر macOS می توانم brew install greadelf را توصیه کنم
همانطور که در libdynamic.so می بینید، هدر حاوی soname یکسان با نام فایل است و 2 وابستگی به libs سیستم دارد: libdl و libc. اما همچنین به دلیل حل نشدن نماد sqrtf باید کتابخانه ریاضی را در اینجا پیوند دهیم. برای انجام این کار، فقط پرچم -lm را اضافه کنید
clang38: خطا: دستور پیوند دهنده با کد خروج 1 ناموفق بود (برای دیدن فراخوان از -v استفاده کنید)
لینکر گفت که هیچ Q_rsqrt و rsqrt وجود برنامه نویسی اندروید با سی شارپ ندارد. سعی کنید در مقابل کتابخانه ها پیوند برقرار کنید:
زمان اجرای آن بر روی دستگاه است. علاوه بر اجرای برنامه خط فرمان قابل اجرا، برای تعیین LD_LIBRARY_PATH (مسیری که فایل اجرایی باید به دنبال کتابخانه های پویا باشد) نیاز است:
C یک زبان بین پلتفرمی است و به طور کلی کد C را می توان برای هر پلتفرمی کامپایل کرد. هدرهایی که در پروژه نمونه خود وارد کردم به libc اشاره دارد، این کتابخانه استاندارد برای زبان برنامه نویسی C است، همانطور که در استاندارد ANSI C مشخص شده است. در این بخش، نحوه ساختن برنامه نمونه برای سیستم میزبان (در مورد من macOS) و اندروید را نشان خواهم داد. برای این منظور از CMake استفاده می کنم:
CMake یک خانواده ابزارهای متن باز و چند پلتفرمی است که برای ساخت، آزمایش و بسته بندی نرم افزار طراحی شده است. CMake برای کنترل فرآیند کامپایل نرمافزار با استفاده از فایلهای پیکربندی مستقل از پلتفرم و کامپایلر، و تولید فایلهای داخلی و فضاهای کاری که میتوانند در محیط کامپایلر مورد نظر شما استفاده برنامه نویسی اندروید با سی شارپ شوند، استفاده میشود. 8
Android SDK امروزه شامل نسخه خودش از CMake است، ما از آن استفاده خواهیم کرد.
همه قوانین کامپایل معمولاً در CMakeList.txt توصیف ایرانیان سایبر می شوند. در اینجا می توانید نحو پیکربندی CMake را بررسی کنید. نسخه من از CMakeLists.txt برای نمونه سریع معکوس برنامه نویسی اندروید با سی شارپ ریشه مربع است:
ساختن CMake از 2 مرحله تشکیل شده است: ایجاد فایل های makefi برای پلتفرم هدف و اجرای ساخت
کامپایل پروژه برای مک:سی دی ساخت اندروید
جذر معکوس سریع 42 برابر با 0.154036 استجذر معکوس استاندارد 42 برابر با 0.154303 است همانطور که می بینید CMake یک ابزار بسیار ساده برای ساخت کد C cross-platform است.
اکنون میتوانید چیز پیچیدهتری را با یکی از IDEهایی که از سیستم ساخت CMake پشتیبانی میکند (مثلاً JetBrains CLion) امتحان کنید.
طبق اسناد رسمی، گوگل استفاده از NDK رابرنامه نویسی اندروید با سی شارپ به دو دلیل توصیه می کند:
برای دستیابی به تأخیر کم یا اجرای برنامههای فشرده محاسباتی، مانند بازیها یا شبیهسازیهای فیزیک، عملکرد اضافی دستگاه را کاهش دهید.
استفاده مجدد از کتابخانه های C یا C++ خود یا سایر توسعه دهندگان.
از نظر من، C می تواند برای هر کد خاصی در پروژه شما به جز بخش UI و ارتباط با یک سیستم استفاده شود. همچنین، می تواند در توسعه بین پلتفرمی پایگاه کد مشترک مفید باشد.
امیدوارم آموزش من شما را متقاعد کرده باشد که از C code و inspi نترسیدقرمز برای نوشتن چیزی به تنهایی نمونه من از کامپایل کراس پلتفرم در Github موجود است. آیا شما یک عاشق برنامه نویسی برنامه نویسی اندروید با سی شارپ عالی هستید؟ اگر بله، پس مطمئناً برنامههایی را که در این مقاله به اشتراک گذاشتهام دوست خواهید داشت. زیرا آنها به شما اجازه می دهند در هر نقطه از دستگاه اندرویدی خود برنامه نویسی