برنامه نویسی ios با java
سلام دوستان امروز دنبال تبدیل برنامه های اندرویدی به ios بودم به یه چیز جالب رسیدم گفتم اینجا به اشتراک بزارم !
یه ابزار پیدا کردم که میتونیم برنامه بومی ios با جاوا بنویسیم داخل Eclipse !
آدرس وب سایت : http://robovm.com/
اگه اطلاعات دقیق از نحوه استفاده و نرم افزار های مورد نیازش پیدا کردم یا پیدا کردید همینجا به اشتراک بزارید !
خیلی ممنون !
با یه جستجو یه سری اطلاعات به دست آوردم :
RoboVM ابزاری است که به ما اجازه می دهد برنامه های بومی iOS را با زبان جاوا بنویسیم.و این یک امتیاز فوق العاده برای برنامه نویسان جاوایی است. به علاوه RoboVM یک ترکیب عالی با ابزار های آشنای Eclipse و Maven دارد که این برای برنامه نویسان جاوایی یک امتیاز مثب به حساب می آید.
RoboVM بایت کد های جاوایی را به کد های ARM و x86 تبدیل می کند و برنامه های مبتنی بر RoboVM مستقیماً توسط دستورات CPU اجرا می شوند و هیچ مفسری (interpreter) در این بین نیست. لزای برنامه های نوشته شده به این طریق با سرعت بالایی اجرا می شوند.
RoboVM به عنوان پلی بین Objective-C و Java عمل می کند و شما به راحتی می توانید از ویژگی های بومی iOS استفاده کنید. و از اشیای Objective-C مانند اشیای جاوایی استفاده کنید. این ویژگی به شما اجازه می دهد به سخت افزار دسترسی داشته باشید و یا از UI بومی iOS استفاده کنید.
RoboVM بر خلاف سایر ابزار های مشابه هیچ محدودیتی را در استفاده از جاوا به شما اعمال نمی کند و شما می توانید از تمام ویژگی های جاوا استفاده کنید.همچنین به جای جاوا می توانید از زبان های مبتنی بر JVM مانند Clojure ، Scala یا Kotlin نیز استفاده کنید.
RoboVM به شرکت ها اجازه می دهد تا توسعه برنامه های iOS به راحتی توسط همان تیم جاوایی انجام پذیرد .این یعنی استفاده مجدد از بسیاری از کد ها ، صرفه جویی در نیروی انسانی و ...
علاوه بر موارد فوق RoboVM یک ابزار متن باز است و این یک خبر خوب برای تمام متن باز ها به حساب می آید.
برای اطلاعات بیشتر در مورد RoboVM می توانید به سایت اصلی آن مراجعه کنید.
ادامه مطلب :
RoboVM چگونه کار می کند؟
RoboVM یک بار برای همیشه بایت کد های جاوایی را به دستورات ماشین یک سیستم عامل خاص و یک CPU خاص تبدیل می کند.این عمل فقط در زمان کامپایل بایت کد ها انجام می شود و دیگر قابل تکرار نیست. در نتیجه یک محدودیت خواهیم داشت و آن اینکه نمی توانیم برنامه هایی ایجاد کنیم که در زمان اجرا بایت کد جاوا ایجایی می کنند (در اکثر مواقع نیز چنین برنامه هایی نمی نویسیم).معمولاً هدف iOS و ARM هستند ولی RoboVM قادر است برای Max OS X و Linux نیز بایت کد های جاوایی را ترجمه کند. (نکته مهم : این پروژه در حال پیشرفت است و در آینده سیستم عامل ها و CPU های بیشتری را پوشش خواهد داد).
تبدیل کد به این شیوه گاهاً می تواند باعث شود کد هایی حتی سریع تر از کد های نوشته شده با Objective-C داشته باشیم. و تنها محدودیت این است که کامپایل داینامیک (تبدیل بایت کد ها به کد های ماشین در زمان اجرا) نداریم.
تبدیل از بایت کد به کد باعث می شود به راحتی بتوانیم از زبان های مبتنی بر JVM مانند اسکالا و یا کتابخانه های خاص که به شکل Jar هستند استفاده کنیم.
توجه کنید که این روش با روش های مبتنی بر اجرای یک مفسر بسیار متفاوت است و اجرای مفسر بر خلاف این روش کند است.
نیازمندی ها :
برای استفاده از RoboVM می توان از دستورات خط فرمان یا ابزار هایی مثل Maven یا Gradle و یا یک IDE خاص استفاده کرد. ساده ترین راه شاید استفاده از Eclipse باشد که برای اینکار باید پلاگین مخصوص آن را نصب کنیم.قبل از نصب این پلاگین بهتر است نیازمندی ها را بشناسیم :
یک سیستم Mac که حد اقل Mac OS X 10.9 روی آن باشد : چندان تعجب بر انگیز نیست. قرار است RoboVM بایت کد های جاوا را به کدهای ماشین iOS تبدیل کند پس برای این کار به سیستم Mac نیاز داریم. اگر چنین سیستمی ندارید می توانید همینجا از ادامه این مطلب صرف نظر کنید.
Java SE 7 JDK
Eclipse
Xcode 5.x
توجه کنید که در اینجا Eclipse حتماً باید با استفاده از Java SE 7 JDK اجرا شود اگر از Apple's Java 6 JVM استفاده کنید با مشکل مواجه خواهید شد.
نصب پلاگین RoboVM for Eclipse :
خوشبختانه این کار بسیار آسان است تنها کاری که باید بکنیم این است Eclipse Marketplace را اجرا کنیم و عبارت robovm را جست و جو کنیم و سپس پلاگین مورد نظر را نصب کنیم.

RoboVM 1.png
ساخت یک برنامه ساده iOS :
در این مرحله می خواهیم یک برنامه بسیار ساده مبتنی بر iOS در محیط Eclipse ایجاد کنیم.
برای اینکار از طریق منوی File گزینه New و سپس Project را انتخاب می کنیم. در پنجره ظاهر شده از بخش RoboVM گزینه RoboVM iOS Project را انتخاب می کنیم:

RoboVM 2.png
در پنجره باز شده در قسمت Project name عبارت IOSDemo را وارد می کنیم.در قسمت App id نیز عبارت org.robovm.IOSDemo را وارد می کنیم سپس روی دکمه Finish کلیک می کنیم.

RoboVM 3.png
کلاس جدیدی به نام IOSDemo ایجاد می کنیم و کد زیر را در آن می نویسیم :
import org.robovm.apple.coregraphics.*;
import org.robovm.apple.foundation.*;import org.robovm.apple.uikit.*;publicclassIOSDemo extends UIApplicationDelegateAdapter{privateUIWindow window =null;privateint clickCount =0;@Overridepublic boolean didFinishLaunching(UIApplication application,NSDictionary launchOptions){
final UIButton button =UIButton.create(UIButtonType.RoundedRect);
button.setFrame(newCGRect(115.0f,121.0f,91.0f,37.0f));
button.setTitle("Click me!",UIControlState.Normal);
button.addOnTouchUpInsideListener(newUIControl.OnTouchUpInsideListener(){@Overridepublicvoid onTouchUpInside(UIControl control,UIEventevent){
button.setTitle("Click #"+(++clickCount),UIControlState.Normal);}});
window =newUIWindow(UIScreen.getMainScreen().getBounds());
window.setBackgroundColor(UIColor.colorLightGray());
window.addSubview(button);
window.makeKeyAndVisible();returntrue;}publicstaticvoid main(String[] args){NSAutoreleasePool pool =newNSAutoreleasePool();UIApplication.main(args,null,IOSDemo.class);
pool.close();}}
الآن آماده ایم تا برنامه را روی شبیه ساز اجرا کنیم. روی پروژه کلیک راست می کنیم و از قسمت Run As گزینه iOS Simulator App را انتخاب می کنیم.

RoboVM 4.png
به جای شبیه ساز می توانید از سخت افزار واقعی نیز استفاده کنید.
ساخت IPA برای انتشار در App Store :
برای ساخت فایل IPA. روی پروژه کلیک راست کرده از قسمت RoboVM Tools گزینه Package for App Store را انتخاب می کنیم. در پنجره باز شده اطلاعات مورد نیاز برای انتشار برنامه را وارد می کنیم و فایل IPA. ساخته می شود.
منبع اصلی : لینک
منبع فارسی : لینک
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .