我有一个android app 的apk安装到了手机上 但是现在出现bug ,没有源码请问如何调试bug ,求大神们指点哈!

我有一个android app 的apk安装到了手机上 但是现在出现bug ,没有源码请问如何调试bug ,求大神们指点哈!,第1张

1给手机安装驱动(可以通过助手,夹安装)
2百度搜索个adb工具包,
3命令行里切换到工具包里面,运行
adb logcat
出现bug的时候会发现连续数行代exception的log就是出错原因

先看一下业务层中的BaseDao(连接数据库的类),看一下连接数据库的用户名和密码是不是正确,看看驱动包是否导入,就是sqljdbc的文件,如果没导入,把它粘贴到WebRoot下的WEB-INF下的lib目录中,我给你一段连接SQLServer2005的一段代码,你参考一下吧!
package daoimpl;
import javasql;
public class BaseDao {
private static final String DRIVER="commicrosoftsqlserverjdbcSQLServerDriver";
private static final String URL="jdbc:sqlserver://localhost:1433;databasename=epet";//epet是数据源的名称
private static final String DBUSER="sa";//数据库用户名
private static final String DBPASS="123";";//数据库密码
private Connection conn=null;
/
获取连接
@return
/
public Connection getConn(){
try {
ClassforName(DRIVER);
conn=DriverManagergetConnection(URL,DBUSER,DBPASS);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
eprintStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
return conn;
}
/
释放资源
@param conn
@param pstmt
@param rs
/
public void closeAll(Connection conn,PreparedStatement pstmt,ResultSet rs){
try {
if(rs!=null){
rsclose();
}
if(pstmt!=null){
pstmtclose();
}
if(conn!=null){
connclose();
}
} catch (SQLException e) {
// TODO Auto-generated catch block
eprintStackTrace();
}
}
}

因为开发环境不一样,建议按以下方式导入代码。
1右键选择import。
2选择 Existing Projects into Workspace。
3在 select root directory 选择你的代码路径。
4finish后会在Workspace中看到项目代码了。
如果还报错,执行project clean一下代码即可。

需要把反编译的apk存放到apktools同级文件夹目录下,然后运行要查看的安装包,具体 *** 作如下:

1、首先把反编译的apk存放到apktools同级文件夹目录下,如下图所示

2、按住shift+鼠标右键打开命令窗口,运行代码 apktool d ydapk(安装包的名字)。

3、apk后缀名改成zip,解压双击打开xml格式文件如下图所示。

4、打开cmd命令窗口,如下图所示依次输入命令。

5、将classesdex打包成jar包 需要用到dex2ja。

6、然后就可以查看需要的源代码,如下图所示。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13090361.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-30
下一篇 2023-05-30

发表评论

登录后才能评论

评论列表(0条)

保存