Init是Android中的一个大常量数据结构
我必须初始化一个大常量数据结构,但我得到了编译器错误消息:Init是Android中的一个大常量数据结构,android,compiler-errors,Android,Compiler Errors,我必须初始化一个大常量数据结构,但我得到了编译器错误消息: The code of constructor MS_XXX(String) is exceeding the 65535 bytes limit 代码可能是这样的: public class MD_XXX { public List<String> allElements; public MD_XXX(String language) { this.al
The code of constructor MS_XXX(String) is exceeding the 65535 bytes limit
代码可能是这样的:
public class MD_XXX {
public List<String> allElements;
public MD_XXX(String language) {
this.allElements = new ArrayList<String>();
if (...) {
/* 0 */ allElements.add("some text0");
/* 1 */ allElements.add("some text1");
/* 2 */ allElements.add("some text2");
.. many more lines here
public class MD\u XXX{
公开名单等位基因;
公共MD_XXX(字符串语言){
this.allegements=新的ArrayList();
如果(…){
/*0*/allegements.add(“一些文本0”);
/*1*/等位基因。添加(“一些文本1”);
/*2*/等位基因。添加(“一些文本2”);
…这里还有很多行吗
但是
我还需要初始化更多的数据结构,将其放入数据库是一件非常麻烦的事情——再说一遍,这是机密信息
解决这个问题的最好办法是什么?
我真的必须把它分解成几个类文件还是从数据库中读取它?
我真的尽量避免使用DB方式,因为这些数据应该对应用程序是安全的
非常感谢
我真的必须把它分解成几个类文件吗
将其拆分为几个方法可能就足够了。添加一些从超长构造函数调用的私有方法,并将部分代码移到那里。每个方法的长度可以为65535字节。是的,你是对的,幸运的是,非常感谢。但这真的令人失望。在使用XCode的iPhone编程中,这一点对你来说很有用没问题。