小魔女 发表于 2015-1-18 11:49:25

IOS编程:让Qt使用程序跑在Android上仓酷云

视图是仪表盘模型是发动机控制器是控制芯片CoreData---管理数据OBJC刚学的时候觉得CD很高深其实他是最容易用的库之一Qt最年夜的上风就是跨平台,一次性开辟的Qt使用程序,能够跑Windows、跑linux、跑MAC……现在挪动平台android操纵体系云云火爆,Qt固然不克不及放过对android的撑持,对了,另有iphone/ipad。并且,c++开辟者们,想做android开辟也不是成绩了!可是今朝国际研讨qtforandroid的人真是太少了,明天我利用的是外洋开辟者社辨别享的资本:Necessitas
开辟情况

Ubuntu10.04(sorry,qtforandroid暂不撑持windows下开辟)
sun-java6(sorry,qtforandroid1.5会报错的,只能1.6)
necessitas资本下载地点:点击跳转到资本下载地点
apache-ant-1.8.0以上版本:这里供应1.8.2版本资本下载
操纵步骤

安装好necessitasqtcreator后,创立工程时,会发明多了一个Android选项,天然选择创立Android工程。然后会欣喜的发明,工程目次下多了android文件夹。这也是为何qt使用程序能够乐成的跑在android上的精华地点,下篇文章再详细剖析怎样完成的Android的撑持……

<br>
在Tools-->Options里设置一下android情况变量:
注重:别健忘add上名为qtonandroid的AVD(摹拟器)

<br>
然后就能够入手下手开辟Qt使用程序,为了演示,我只是任意写了一点。然后间接点击运转(CTRL+R)。
倘使呈现这个毛病:
Startingremoteprocess...
Cantfindeu.licentia.necessitas.industrius.example.Yiyaaixuexiprocess
办理计划是:
在run选项设置AndroidtargetSDK为android-8
倘使呈现毛病信息为:
Startingremoteprocess...
I/QtJAVA(469):surfaceChanged:480,762
D/dalvikvm(469):Tryingtoloadlib/data/data/eu.licentia.necessitas.ministro/files/qt/lib/libQtCore.so0x44ede7e8
D/dalvikvm(469):Addedsharedlib/data/data/eu.licentia.necessitas.ministro/files/qt/lib/libQtCore.so0x44ede7e8
D/dalvikvm(469):NoJNI_OnLoadfoundin/data/data/eu.licentia.necessitas.ministro/files/qt/lib/libQtCore.so0x44ede7e8,skippinginit
D/dalvikvm(469):Tryingtoloadlib/data/data/eu.licentia.necessitas.ministro/files/qt/lib/libQtGui.so0x44ede7e8
D/dalvikvm(469):Addedsharedlib/data/data/eu.licentia.necessitas.ministro/files/qt/lib/libQtGui.so0x44ede7e8
D/dalvikvm(469):NoJNI_OnLoadfoundin/data/data/eu.licentia.necessitas.ministro/files/qt/lib/libQtGui.so0x44ede7e8,skippinginit
D/dalvikvm(469):Tryingtoloadlib/data/data/eu.licentia.necessitas.ministro/files/qt/plugins/platforms/android/libandroid-8.so0x44ede7e8
D/dalvikvm(469):Addedsharedlib/data/data/eu.licentia.necessitas.ministro/files/qt/plugins/platforms/android/libandroid-8.so0x44ede7e8
I/Qt(469):qtstart
D/dalvikvm(469):Tryingtoloadlib/data/data/eu.licentia.necessitas.industrius.example.Yiyaaixuexi/lib/libYiyaaixuexi.so0x44ede7e8
D/dalvikvm(469):Addedsharedlib/data/data/eu.licentia.necessitas.industrius.example.Yiyaaixuexi/lib/libYiyaaixuexi.so0x44ede7e8
I/Qt(469):qtstart
W/ApplicationContext(469):Unabletocreatefilesdirectory
D/AndroidRuntime(469):ShuttingdownVM
W/dalvikvm(469):threadid=1:threadexitingwithuncaughtexception(group=0x4001d800)
E/AndroidRuntime(469):FATALEXCEPTION:main
E/AndroidRuntime(469):java.lang.NullPointerException
E/AndroidRuntime(469):ateu.licentia.necessitas.industrius.QtActivity.startApplication(QtActivity.java:126)
E/AndroidRuntime(469):ateu.licentia.necessitas.industrius.QtActivity.access$000(QtActivity.java:62)
E/AndroidRuntime(469):ateu.licentia.necessitas.industrius.QtActivity$1$1.run(QtActivity.java:149)
E/AndroidRuntime(469):atandroid.os.Handler.handleCallback(Handler.java:587)
E/AndroidRuntime(469):atandroid.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime(469):atandroid.os.Looper.loop(Looper.java:123)
E/AndroidRuntime(469):atandroid.app.ActivityThread.main(ActivityThread.java:4627)
E/AndroidRuntime(469):atjava.lang.reflect.Method.invokeNative(NativeMethod)
E/AndroidRuntime(469):atjava.lang.reflect.Method.invoke(Method.java:521)
E/AndroidRuntime(469):atcom.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
E/AndroidRuntime(469):atcom.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
E/AndroidRuntime(469):atdalvik.system.NativeStart.main(NativeMethod)
I/Process(469):Sendingsignal.PID:469SIG:9
办理计划:
这类毛病并非情况设置的缘故原由,而是Qt使用程序自己的计划不切合现有平台工具对android的撑持。
好比:label上有中笔墨符等……改用英笔墨符就能够pass的。
假如你研讨出了对中笔墨符撑持的计划,接待交换下~~
顺遂的话,编译经由过程后会主动弹出android摹拟器,可是初度运转程序会碰到这个成绩:

<br>
别忧虑,你能够本人往googlemarket下载MinistroConfigurationTool-1.0.apk和Ministro-2.0.apk,
也能够间接下载我上传到csdn的资本:apk-1apk-2
adbinstall促进安装这两个apk后,再次运转程序,会提醒:

<br>

<br>
安装完成后,再猖狂的启动log以后,就会在摹拟器上看到让我们欣喜的qt使用程序了~~哦不,如今是android使用程序了!
特地提一句:qt使用程序实在被打包成了Yiyaaixuexi-debug.apk,在工程目次下的android/bin/下。
下图是最终效果:

<br>

以后的学习中,一定要多问自己几个为什么,多向有经验的人请教,不要碍于面子。我看重苹果未来的发展,所以我一定要坚持下去,也许别人很容易就学会了的工具,我要学很久,但没关系,因为我始终相信勤能补拙这句话!

柔情似水 发表于 2015-1-20 06:16:51

重要的是,放眼全球也的确找不到第二个如苹果iOS平台这样健壮、完整、先进而且为开发者带来真实收益的开发平台来。

若天明 发表于 2015-1-25 23:10:55

在百度搜索你想要了解的类名(苹果的cocoa和cocoatouch框架的类名很有特点很容易搜到,前缀都是NS or UI),看别人写的博客详解

蒙在股里 发表于 2015-1-30 20:13:07

iPhone文件系统NSFileManager讲解是本文要介绍的内容,主要是通过iphone文件系统来学习NSFileManager的使用方法,具体内容来看本文详解。

只想知道 发表于 2015-2-6 15:41:22

有办法利用自己手头的电脑立刻开始这个美妙旅程的。

愤怒的大鸟 发表于 2015-2-9 15:13:51

有办法利用自己手头的电脑立刻开始这个美妙旅程的。

莫相离 发表于 2015-2-23 00:30:07

iPhone文件系统:创建、重命名以及删除文件,NSFileManager中包含了用来查询单词库目录、创建、重命名、删除目录以及获取/设置文件属性的方法(可读性,可编写性等等)。

冷月葬花魂 发表于 2015-3-7 04:32:45

看完这个你就可以有多种选择来踏入做应用的阶段

小妖女 发表于 2015-3-14 10:22:01

然而,在vmware软件环境下,安装Mac OS X操作系统也是一件非常复杂的事情,而且还有可能花费了大量时间,最后却跑不起来。笔者也是经过了大量的实践,

山那边是海 发表于 2015-3-20 09:52:30

到大三时,学院与我去培训的机构成立了实习基地,并让我们寒假去实习了一段时间,感觉还不错,于是在大四的时候去培训了

变相怪杰 发表于 2015-3-24 08:15:28

培训时可以选择安卓,iOS,Java,因为实习的时候我选了安卓,当时实习时间只有三周,学的晕头转向,而java我也没学过,iOS的基础是C语言,这个大学里还是学过的,于是选择了iOS。

深爱那片海 发表于 2015-3-28 00:13:06

其次学习方法和学习心态很重要,在学习当中应该保持一颗良好的心态。应该借鉴别人好的学习方法,大家互相帮助,取长补短。

老尸 发表于 2015-3-28 03:53:25

在此,某不才愿将安装成功的Mac OS X系统的vmware虚拟机向有志学习iOS开发的各位学友们免费开放出来,经测试,可以在WindowsXP/Win7系统上完美运行,即便你的机器只有2GB内存。

精灵巫婆 发表于 2015-4-6 17:05:14

因为我们老师也是自学的,给我们讲课说的最多的就是百度,谷歌,查文档。

兰色精灵 发表于 2015-4-6 17:14:45

从C语言入门,因为IOS开发用的是OC语言,是在C基础上的,不过也跟C不是很搭界,你可以直接学习OC语言也可以,

金色的骷髅 发表于 2015-4-18 07:04:58

学习ios没什么捷径,关键在于多动手敲,曾看到前辈开玩笑说怎么快速学会某技术,答案是:“提高打字速度,快点写代码就能快点学会了”。

小女巫 发表于 2015-4-25 03:56:22

看《iPhone 4与iPad开发基础教程》,跟着一步步来

小魔女 发表于 2015-5-3 15:31:24

到大三时,学院与我去培训的机构成立了实习基地,并让我们寒假去实习了一段时间,感觉还不错,于是在大四的时候去培训了

透明 发表于 2015-5-4 16:38:38

中国如今已然发展成为一个软件大国,软件人才的数量跃居全球之首。当然,在苹果平台的开发领域,也保持了相当强劲的发展势头。然而,很多初入iOS开发门槛的开发者,

仓酷云 发表于 2015-5-8 14:27:04

因为我们老师也是自学的,给我们讲课说的最多的就是百度,谷歌,查文档。
页: [1] 2
查看完整版本: IOS编程:让Qt使用程序跑在Android上仓酷云