精华内容
下载资源
问答
  • 因为最近在开发公司的SDK,...会报控件的类型错误(例如会告诉你Button类型的控件不能用TextView表示)先解释一下为什么会出现这种错误吧,因为当我们项目导出成jar。里面java文件里面的findViewById,ADT就会监测到...

    因为最近在开发公司的SDK,因为不想让游戏开发商看到SDK源码。所以最后会把项目导出成jar给开发商,但是在导出测试jar的时候发现,总是闪退。报各种错误:

    1.会报控件id找不到对应的控件

    2.会报控件的类型错误(例如会告诉你Button类型的控件不能用TextView表示)

    先解释一下为什么会出现这种错误吧,因为当我们项目导出成jar。里面java文件里面的findViewById,ADT就会监测到,自动在R.java里注册一个ID方便使用。 但是反编译后,你会看到R文件文件id内部静态类


    所以这说明你导出来的jar包里面的控件的id值是固定值的。这会出现什么问题呢?很简单,当我们的项目被用作jar包后,在主项目里面R文件会为重新为我们控件生成新的id。但是我们jar包里面findViewById的ID值是固定的,所以这最终造成了jar包里面的控件findViewById会报控制正异常,又或者是报控件类型转换错误。


    画的有点丑,大概意思就是这样子,我们SDK里面的控件findViewById的值是不变的,但是我们布局文件里面的id值是会变的。问题找到了,接下来就是要怎么解决的问题了。既然目标项目会为jar的控件重新生成id,那我们就不要让它帮我们生成新的id,要实现这个功能,第一步要SDK项目中,我们要自己定义id,在values文件夹下新建一个ids的xml文件,还有一个public的xml文件。


    比如我们要写一个btn_login的id,现在ids文件写


    然后在public.xml写,注意里面的id字段使我们自己定义的,这个id我们在R文件里面拿到



    下一步就是在布局文件修改一下


    其他的控件id是一样套路,我们在ids文件和public文件定义自己的id。然后再次导出jar,然后clean一下项目。这样我们的目标项目就不用为我们重新控件id,而是会直接在我们定义的xml文件找id,所以这样一来。目标项目就不会出现控件空指针或者类型转换错误。

    这个让我烦恼几天的问题终于解决了,希望和我遇到同样问题的同学。看到这篇文章后能完美解决这个问题。我是一名android工程师,我为自己加油

    展开全文
  • 我网上copy的代码,执行后没有报错,但是excel打不开,为什么呢? 代码如下: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go /*--数据导出EXCEL 导出表中的数据到Excel,包含字段名,文件为真正的Excel文件 ,...
  • /*将该任务查询结果导出为TXT格式*/ SELECT * FROM 表,INTO OUTFILE '路径/文件名.txt'; 2.) /*得到当日任务结果数*/ SELECT SUM(任务数) as 总数 FROM table_a WHERE task_create_time LIKE 当天日期; ...
  • NRO2NSP 这是一个易于使用的nsp生成器,它将使Nros改写nsps... 导出转发器“ Nros”-可以从HBMenu而不是主屏幕启动的Rom转发器(注意,对于需要更多RAM的标题,您需要使用Title Overide) 添加了设置以允许正式的Ti
  • 使用navicat执行从pw中导出的sql语句时报[Err] ORA-00911: 无效字符 这个错误。 经过分析后发现,是因为...但是不知道为什么sqldeveloper没有报错。 转载于:https://www.cnblogs.com/zhenmingliu/p/3286214.html...

    使用navicat执行从pw中导出的sql语句时报[Err] ORA-00911: 无效字符  这个错误。

    经过分析后发现,是因为某个表的id中的类型设置用的中文括号包起来的。

    但是不知道为什么sqldeveloper没有报错。

    转载于:https://www.cnblogs.com/zhenmingliu/p/3286214.html

    展开全文
  • 我第一个映射可以正确导出表,为什么我改了一个映射就导不出去了呢!高手解决下。 下边代码: <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" ...
  • MySQL命令大全

    2018-01-15 11:19:17
    例如,往表 MyClass中插入二条记录, 这二条记录表示:编号的名Tom的成绩.45, 编号 的名Joan 的成绩.99,编号 的名Wang 的成绩.5. mysql>insert into MyClass values(1,’Tom’,96.45),(2,’Joan...
  • 测试培训教材

    2014-04-01 12:10:48
    In ITG Request Id, add the IT Governance request ID. Note that this is relevant only when integrating with an IT Governance tool. 设置自动化测试失败时采取的措施: 设置测试失败时邮件通知相关人员: ...
  • MAPGIS地质制图工具

    2013-05-06 16:15:30
    1、MapGis数据转入Excel后表格内容空白什么原因? 答:可能原因是转的时候没有正常关闭com接口,可以关闭Section,重新打开Section再试试,或者打开任务管理器,关闭所有Excel进程。 2、Excel单元格数据转入MapGis...
  • MYSQL常用命令大全

    2011-05-30 13:31:24
    例如,往表 MyClass中插入二条记录, 这二条记录表示:编号1的名Tom的成绩96.45, 编号2 的名Joan 的成绩82.99,编号3 的名Wang 的成绩96.5. mysql> insert into MyClass values(1,'Tom',96.45),(2,...
  • 然后新建一个安卓工程,将unity导出的资源一一拷贝进去,然后在mainActivity中跳转至unityActivity,但是每次finish当前unityactivity都会crash掉,下面是我的安卓代码,求大神们帮忙看看这是为什么,感激不尽!...
  • 3.2.4 为什么要避简就难 47 3.3 调查问卷 48 3.4 问卷调查结果的处理和显示 49 3.4.1 mysql界面与mysqli界面 49 3.4.2 建立与数据库的连接 49 3.4.3 对数据进行处理并把它存入数据库 49 3.4.4 显示问卷调查的...
  • 2. 更新了在假条申请时,如果输入不存在的学号,ajax调用失败,不会提示学号输入有误的bug,原因是,在str = res的时候,因为传回来的数组空,导致这句话错误,js不再继续执行后面的语句,现在把这一行去掉,直接...
  • 这是本什么书,有何特色,内容是什么,为什么这么写;写给谁看,怎么看更好。当然我还会加一些自己觉得比较个性化的内容。 5月5日,审阅完编辑老师的第一章反馈,并合并。 5月6日,审阅完第二章的一半。海玲姐两位...
  • asp.net知识库

    2015-06-18 08:45:45
    C# 2.0会给我们带来什么 泛型技巧系列:如何提供类型参数之间的转换 C#2.0 - Object Pool 简单实现 Attributes in C# 手痒痒,也来个c# 2.0 object pool 泛型技巧系列:用泛型打造可复用的抽象工厂 体验.net2.0的优雅...
  • kmtune //HP-UX下用kmtune>kernel.txt将内核参数信息导出到kernel.txt文件中配置文件: /usr/conf/master.d/core-hpux ##操作系统 //操作系统版本 uname -a //操作系统补丁 instfix -i|grep ML //获取硬件信息 ...
  • 什么是计算属性 <div id="app"> <h2>{{firstName + ' ' + lastName}}</h2> <h2>{{firstName}} {{lastName}}</h2> <h2>{{getFullName()}}</h2> <h2>{{...
  • Chkdsk 命令还可列出并纠正磁盘上的错误。  含有下列参数的 chkdsk 命令仅在使用故障恢复控制台时才可用。可在命令提示符下使用带有不同参数的 chkdsk 命令。  vol [drive:] [ chkdsk [drive:] [/p] [/r]  ...
  • 为什么要仅仅将这段代码从main.js摘出呢?一方面是尽量清洁main.js;另一方面,就是为了兼容qiankun1.0的render方法。 因为qiankun1.0需要在注册vue实例时显式的将appContent传入app.vue,如果你不用qiankun1.0版本,...
  • spark计算mongodb中的数据,总是计算不出结果,这些错误信息也找不到是为什么, 有一两次能计算出结果 。第一次接触这个东西 大神们帮帮忙啊 # 主要代码如下: SparkConf sparkConf = new SparkConf(); ...
  • 大多数用户,并不想这些, 只想像IE的Webbrower那样简单调用,因为IE的webbroiwer兼容性已经越来越不行了, 很多时候显示一个网页,会报js错误,或是报找不到项目之类的(但在标准IE中运行没这问题) 另外一些人,想实现...
  • // 向mongodb查询一个id为1的Player,并且等待返回 Player player = await Game.Scene.GetComponent<DBProxyComponent>().Query<Player>(1); Log.Debug($"打印player name: {player.Name}") 可以看出,...
  • 自定义信息框+错误框+询问框+右下角提示框(包含多种格式)。 17套皮肤样式随意更换,所有样式全部统一,包括菜单等。 云台仪表盘鼠标移上去高亮,八个方位精准识别。 底部画面工具栏(画面分割切换+截图声音等设置...
  • -- 如果是导出一个订单列表或者统计一个报表之类的操作,就不要Fallback了,让他异步执行吧,没有必要降级。 <h3>CircuitBreaker模式 <p>Martin Flower 曾经总结了一个CircuitBreaker的模式࿰...
  • 按照导出时的菜单步骤,将原来的“导出”换“导入”进行xx作就可以了。(不用重复了吧,呵呵, 要是反xx作不了,你就实在太笨了,也就不要看这篇文章了) 6.恢复字库 将备份字库信息打开,如果有恢复程序就...
  • arcgis工具

    2012-10-22 22:37:31
    打开属性表,修改多边形的字段“ID”的值1,保存修改,停止编辑。 打开 空间分析工具栏 GIS软件应用-ArcGIS 执行命令:<空间分析>-<转换>--<要素到栅格> 指定栅格大小:查询要剪切的栅格图 层Landuse 的栅格...
  • linux 系统管理员.pdf 书籍

    热门讨论 2012-02-13 11:02:45
    3.8.7 利用badblocks检查磁盘错误 217 3.8.8 抵制碎片 217 3.8.9 适用于所有文件系统的其他工具 217 3.8.10 适用于ext2文件系统的其他工具 218 3.9 无文件系统的磁盘 219 3.10 磁盘空间的分配 219 3.10.1 分区方案 ...
  •  本书适用于想学习如何windows操作系统编写c++程序的初学者,学习本书内容无需任何编程基础。...  本书源代码及习题答案下载  http://www.wrox.com  http://www.tupwk.com.cn/downpage 作译者  Ivor Horton...
  • Visual C++ 2005 入门经典 详细书签版

    热门讨论 2013-02-02 16:39:43
    9.9.5 被指定new的函数 501 9.9.6 委托和事件 502 9.9.7 引用类的析构函数和结束函数 514 9.9.8 通用类 516 9.10 小结 527 9.11 练习 528 第10章 调试技术 531 10.1 理解调试 531 10.1.1 程序...
  • 9.9.5 被指定new的函数 501 9.9.6 委托和事件 502 9.9.7 引用类的析构函数和结束函数 514 9.9.8 通用类 516 9.10 小结 527 9.11 练习 528 第10章 调试技术 531 10.1 理解调试 531 10.1.1 程序...

空空如也

空空如也

1 2
收藏数 38
精华内容 15
关键字:

为什么id导出错误