Gradle的一个奇淫巧技

日常开发中我总希望Gradle里面配置一下,我们的java代码就会自动修改逻辑,简称一劳永逸

这么说来很抽象,我举几个例子大家就明白了

  1. gradle文件中设置不使用flutter,java代码就会自动使用Native页面
  2. gradle文件中设置使用flutter,java代码就会自动使用Flutter页面

实现思路

gradle修改之后将变动写入android的assets文件夹下面,android代码运行的时候再读取assets里面的文件

把项目地址奉上:

GradleJavaTest Demo

关键代码浏览:

test.gradle

def targetFile = new File("./app/src/main/assets/test.txt")
//这里获取的实际是Java中的BufferedOutputStream
targetFile.withOutputStream { osm ->
    String result = isUseFlutter
    osm.write(("使用Flutter页面?" + result).getBytes())
}

Settings.gradle

rootProject.name='test'
include ':app'

apply from: 'test.gradle'

MainActivity.java

public class MainActivity extends AppCompatActivity {

    private AppCompatTextView mTextView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        mTextView = findViewById(R.id.tv);
    }

    public void readFile(View view) {
        InputStream is = null;
        String msg = null;
        try {
            is = this.getResources().getAssets().open("test.txt");
            byte[] bytes = new byte[is.available()];
            is.read(bytes);
            msg = new String(bytes);
            mTextView.setText(msg);
        } catch (IOException e) {
            e.printStackTrace();
            mTextView.setText("代码出错啦! "+e.getMessage());
        }
    }
}

在这里插入图片描述

附上两篇博客:

任玉刚Gradle博客

Gradle文件读写操作

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值