开发QQ互联android版Ane扩展 遇到几个典型问题
1、调用腾讯sdk init出错、不显示登录授权界面,原因是要传入正确Activity的Context进入初始,腾讯sdk需要运行在Activity里面;
2、air项目运行时,提示找不到代码,原因是ane打包无法调用jar包,引用的jar包不能编进apk中;
3、腾讯sdk无法回调方法问题,原因是air的Activity没有重写onActivityResult方法(air ane方式无法重写),导致回调不到,解决方法是作为独立Activity运行,因为是使用第三方jar类库,所以无法采用receiver广播方式处理;
4、独立Activity运行把air主Activity给挡住了,解决方法是即时创建、即时销毁。不能采取再运行air主Activity方式,或暂停androidActivity,其他隐藏Activity方式似乎在air中无效;
相关知识点
1、android项目么的日志信息如何打印出,方便看
2、启动air项目Activity方法、启动android项目Activity方法
3、android配置xml,如何配置在air项目-app.xml中
4、android中如何读取配置xml、包名等信息
5、android的数据如何传递给as
6、androidane的开发流程
7、java中输出日志
归纳步骤:
1、配置开发环境(最好用集成的开发环境、省事)
2、创建android工程,导出jar
3、创建As commonAneLib工程,编写ane命令并打包
4、配置-app.xml权限(很重要)
5、air项目工程调用
遇到的其他问题:
Eclipse运行提示:Failed to load the JNI shared library jvm.dll
到官网下了Eclipse Helios 64bit版,打开却出现:Failed to load the JNI shared library jvm.dll 错误。然而检查给定目录下,jvm.dll明明完好的呆在那呢。寻寻觅觅后,才发现时因为装的JDK是32bit版本,换成64bit的JDK后,问题解决。
Android!No Launcher activity found!错误
新建android工程,跑程序时显示No Launcher activity found错误,模拟器也不运行。
原因出在项目的主配置xml中,一般名字都是叫AndroidManifest.xml
里面没有配置启动项,在<application></application>中少了这段代码
<activity android:name=".MainActivity" android:label="@string/app_name">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN" />
<categoryandroid:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
加上即可运行。
Android启动模拟器是出现“Failed to allocate memory: 8”错误提示的原因及解决办法
原因:设置了不正确AVD显示屏模式,4.0版默认的模式为WVGA800,改成WXGA720后导致不支持。
解决办法:编辑这个AVD,将Skin -> Buildin的参数改回默认参数。
相关网站:
Android SDK和集成开发环境:
http://developer.android.com/sdk/index.html
Android基础之用Eclipse搭建Android开发环境和创建第一个Android项目(Windows平台)
http://www.cnblogs.com/allenzheng/archive/2012/11/10/2762379.html
ANE Android Java 接口部分引用第三方JAR的解决办法
http://bbs.9ria.com/thread-160445-1-1.html
Ane开发详细教程
http://bbs.9ria.com/thread-156257-1-1.html
【原文链接:http://blog.csdn.net/linguifa/article/details/12754421/ 转载请注明出处】