热搜:pottle北京小瓶科技服务社区
当前位置: 北京小瓶科技服务社区 » IT技术 » react native RN 安卓原生代码优化部分
帖子状态  
本帖子共有 102 位阅读者, 0 个回复.
  • 回复
1条记录

admin

管理员
帖子
272 
金钱
702 
魅力
702 
威望
702 
注册
2013-04-06 
admin 发表于 2019-06-05 13:34   
react native RN 安卓原生代码优化部分
react native RN 安卓原生代码部分整体比较粗糙
我认为达到能用的地步起码要改的代码有

①支持开屏页面,不是欢迎页,而是加载时候的开屏页面


②如果后台已经存在当前app点击桌面图标,不应该重启app


③安卓返回键最好能把app退出到后台,而不会直接kill掉


主要改 MainActivity.java  参考:
  1. public class MainActivity extends ReactActivity {

  2.     /**
  3.      * Returns the name of the main component registered from JavaScript.
  4.      * This is used to schedule rendering of the component.
  5.      */
  6.     @Override
  7.     protected String getMainComponentName() {
  8.         return "Mshop";
  9.     }



  10.     //退出隐藏到后台
  11.     @Override
  12.     public void invokeDefaultOnBackPressed() {
  13.         // do not call super.invokeDefaultOnBackPressed() as it will close the app.  Instead lets just put it in the background.
  14.         moveTaskToBack(true);
  15.     }



  16.     @Override
  17.     protected void onCreate(Bundle savedInstanceState) {
  18.         //如果在后台桌面点击不重启
  19.         if (!this.isTaskRoot()) {
  20.             Intent mainIntent = getIntent();
  21.             String action = mainIntent.getAction();
  22.             if (mainIntent.hasCategory(mainIntent.CATEGORY_LAUNCHER) && mainIntent.ACTION_MAIN.equals(action)) {
  23.                 finish();
  24.                 return;
  25.             }
  26.         }


  27.         SplashScreen.show(this,true);  // true means full screen

  28.         getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE);  //禁止截图


  29.         super.onCreate(savedInstanceState);

  30.     }


  31. }
  • 回复
1条记录