browser-android在合并浏览器Browser.odex的时候出错

问题描述

android在合并浏览器Browser.odex的时候出错
system/framework下的文件已全部pull出,报错如下:

Error while disassembling method Lcom/android/browser/BrowserSettings;->syncSetting(Landroid/webkit/WebSettings;)V. Continuing.org.jf.dexlib.Code.Analysis.ValidationException: Could not resolve the method in class Landroid/webkit/WebSettings; at index 94        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3644)        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)        at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)        at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)        at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)        at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)        at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:294)        at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:116)        at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)                at org.jf.baksmali.main.main(main.java:308)opcode: invoke-virtual-quickCodeAddress: 4Method: Lcom/android/browser/BrowserSettings;->syncSetting(Landroid/webkit/WebSettings;)VError while disassembling method Lcom/android/browser/BrowserSettings;->syncStaticSettings(Landroid/webkit/WebSettings;)V. Continuing.org.jf.dexlib.Code.Analysis.ValidationException: Could not resolve the method in class Landroid/webkit/WebSettings; at index 82        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3644)        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)        at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)        at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)        at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)        at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)        at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:294)        at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:116)        at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)        at org.jf.baksmali.main.main(main.java:308)opcode: invoke-virtual-quickCodeAddress: 4Method: Lcom/android/browser/BrowserSettings;->syncStaticSettings(Landroid/webkit/WebSettings;)VError while disassembling method Lcom/android/browser/BrowserSettings;->toggleDesktopUseragent(Landroid/webkit/WebView;)V. Continuing.org.jf.dexlib.Code.Analysis.ValidationException: Could not resolve the method in class Landroid/webkit/WebSettings; at index 130        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3644)        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)        at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)        at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)        at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefini        tion.java:311)        at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)        at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)        at org.jf.baksmali.Adaptors.ClassDefinition.writeVirtualMethods(ClassDefinition.java:310)        at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:117)        at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)        at org.jf.baksmali.main.main(main.java:308)opcode: invoke-virtual-quickCodeAddress: 41Method: Lcom/android/browser/BrowserSettings;->toggleDesktopUseragent(Landroid/webkit/WebView;)V

哪位大侠晓得吗?

解决方案

使用backsmali去反编译odex的代码的话要指定framework里面的所有jar的,具体可以看看文档。

http://code.google.com/p/smali/wiki/DeodexInstructions

时间: 2024-08-03 00:11:41

browser-android在合并浏览器Browser.odex的时候出错的相关文章

Android利用WebView开发browser中flash无法播放的问题

使用系统自带浏览器可以成功播放flash,可是利用自己开发的就无法播放. 代码如下: browser = (WebView) findViewById(R.id.webview); browser.getSettings().setJavaScriptEnabled(true); browser.getSettings().setPluginsEnabled(true); browser.getSettings().setAllowFileAccess(true); browser.getSet

Android 应用指定浏览器开发实例_Android

  本文主要讲解Android浏览器的开发实例,有三部分内容:启动Android默认浏览器.指定浏览器进行访问以及打开本地的html文件.        一.启动Android默认浏览器 Java代码 Intent intent = new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse("http://www.cnblogs.com"); i

Android开发之浏览器用法实例详解(调用uc,opera,qq浏览器访问网页)_Android

本文实例讲述了Android开发之浏览器用法.分享给大家供大家参考,具体如下: 一.启动android默认浏览器 Intent intent = new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse("http://www.jb51.net"); intent.setData(content_url); startActivity(inten

Android 应用指定浏览器开发实例

本文主要讲解Android浏览器的开发实例,有三部分内容:启动Android默认浏览器.指定浏览器进行访问以及打开本地的html文件. 一.启动Android默认浏览器 Java代码 Intent intent = new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse("http://www.cnblogs.com"); intent.set

android开发-Android关于从浏览器打开本地APP的问题

问题描述 Android关于从浏览器打开本地APP的问题 项目需要,做了个从APP打开本地浏览器去做付款操作,然后付款完成后点击"返回"可跳转回APP.参考了资料,可以从浏览器打开APP,但是发现不是跳转,而是从浏览器打开的APP,进程中还显示原来APP本身的进程,有没有大神知道从浏览器跳转回原来打开的APP而不是从浏览器重新打开APP呢? 解决方案 为什么没有人帮忙解惑呢,小弟新手,望高人指点 解决方案二: 请问,怎么使用浏览器打开app?比如使用uc浏览器带支付宝app

android 使用 模拟浏览器,无法得到返回值

问题描述 android 使用 模拟浏览器,无法得到返回值 代码如下,根据输入的url地址来返回状态码. 可是,httpconnection.getResponseCode();返回的都是200,没有实际返回访问值. 请高手指点. public String stat_is(String strurl) { HttpURLConnection httpconnection; int rcode=0; String respon = "ok"; httpconnection = null

appium+eclipse-求助:Appium如何启动Android默认的浏览器

问题描述 求助:Appium如何启动Android默认的浏览器 利用测试工具Appium写出代码来启动Android默认的浏览器

Android自定义 WebView浏览器_Android

WebView是Android中一个非常实用的组件,它和Safai.Chrome一样都是基于Webkit网页渲染引擎,可以通过加载HTML数据的方式便捷地展现软件的界面. 在布局文件中添加<EditText/>和<Button/>控件, 在布局文件中添加<WebView/>控件 在Activity中获取WebView对象 调用WebView对象的loadUrl()方法,参数:String路径 添加访问网络的权限android.permission.INTERNET 调用

Android仿UC浏览器左右上下滚动功能_Android

本文要解决在侧滑菜单右边加个文本框,并能实现文本的上下滑动和菜单的左右滚动.这里推荐可以好好看看android的触摸事件的分发机制,这里我就不详细讲了,我只讲讲这个应用.要实现的功能就像UC浏览器(或其它手机浏览器)的左右滚动,切换网页,上下滚动,拖动内容. 本文的效果:   一.功能要求与实现1.功能要求:(1)手指一开始按着屏幕左右移动时,只能左右滚动菜单,如果这时手指一直按着,而且上下移动了,那么菜单显示部分保持不变,但文本框也不上下移动!                       (2