• 二 Android Studio 打包EgretApp (开机画面、横竖屏、调试、和原生交互)


    测试环境:

    Windows7

    Egret Engine 5.0.14

    Egret support 5.0.12

    Android Studio 2.3  

    目录:

    一 修改开机画面

    二 横竖屏设置

    三 修改代码后调试,输出console

    四 和原生交互

    五 热更新

    一 修改开机画面

    找到项目目录下AndroidManifest.xml

    注释掉图中的intent-filter,并把SplashActivity的inttent-filter注释取消。这样就有了开机的画面。

      更换启动的开机图片

    找到项目路径下的drawable和其他mipmap-xxx文件夹,

    J: estappasproj.androidappsrcmain es

    将所有splash_img.png图片替换成你自己的开机画面 (我把图片尺寸换了个1280x960的直接报错,图片不能太大)

    二 横竖屏设置

    在AndroidManifest.xml找到android:screenOrientation,默认是竖屏"portrait",设置值为"landscape"为横屏即可。

    设置为横屏后,发现开机画面还是竖屏的....

    需要把开机画面的activity也加一个横屏设置。

    好了这样就是横屏游戏了。

    三 Android和Egret的调试

    每次修改egret项目后,发布时勾选runtime

    则会自动更新包到android_as_path的路径下,这时你只要再次run一次android studio项目就可以运行新的代码了

    Egret中输出console可以在android studio中看到

    我在Egret制作一个按钮,按一下console.log("按一下输出一个console"),如下图,可以在Android Monitor看到。

    但是Android的java中的Log.d()信息,始终打印不出来,百度后也未解决...= =! 

    四 和原生交互

    下面是一个Egret向Android原生层请求登录的例子

    Android层:

    src/main/java/org.egret.java/testapps/testapps


    private void setInterfaces() {      //监听Egret发送来的消息 gameEngine.setRuntimeInterface("reqLogin", new IRuntimeInterface() { @Override public void callback(String message) { Log.d("externalInterface", "接收到Egret的登录请求 : " + message);          
              
    //向Egret发送消息 gameEngine.callEgretInterface("revLogin", "登录成功"); } }); }

    Egret层:

    /**
     * 主页场景
     * @author chenkai 2018/1/8
     */
    class HomeScene extends eui.Component{
    	private loginBtn:eui.Button;
    
    	public constructor() {
    		super();
    		this.skinName = "HomeSceneSkin";
    	}
    
    	protected childrenCreated(){
    //点击登录 this.loginBtn.addEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchTap, this);
             //监听Native发来的消息 egret.ExternalInterface.addCallback("revLogin", function (message:string) { console.log("接收Native登录结果: " + message); }); } private onTouchTap(){ console.log("请求登录"); let json = { account:"chenkai", password:"123456" };
               //向Native发送消息 egret.ExternalInterface.call("reqLogin", JSON.stringify(json)); } }

      

    五 热更新

    待续...

  • 相关阅读:
    作男人 一定要有品位
    如何管理“人”
    Facebook怎样开发软件:工程师驱动的文化(转)
    为人处事100条——修身养性,经典收藏!
    抽空看看这些电影
    曹重英:技术人员也要打造人脉竞争力(转)
    动态分段统计SQL
    不成熟男人与成熟男人的区别
    Ubuntu11.10国内更新源地址汇总以及添加方法(目前最全最快的源)
    ubuntu11.10 64bits机器安装flash方法
  • 原文地址:https://www.cnblogs.com/gamedaybyday/p/8245510.html
Copyright © 2020-2023  润新知