作者naifish (原味的死鱼)
看板java
标题[问题] Android source code中插code
时间Tue Dec 1 17:36:31 2009
我要插的code是要开档并且写入目前执行的
function名称以及
目前时间
一开始我是直接在source code(Request.java)中插开档写档的程式码
但是失败了!!而且还造成之後打开SDK模拟器时browser功能挂掉
接下来我有找寻一些其他方法
有人用写application的方式先写好一支可以开档写档的应用程式
只要这个应用程式work把这段程式放到原本要插的source code中也会是可以work的
所以我也写了一个简单的开档、写档的应用程式
也的确可以顺利的运作
但在把这段程式码放到Request.java中接着对source code重新compile
反而出现了error!!
不知道是这个方法错误还是我有什麽误解?
又或是其他方法才是对的?
不知道板上的高手们有什麽看法?
附上我的程式片段
File MyFile = new File("/sdcard/log.txt");
try {
FileWriter MyFileWriter = new FileWriter(MyFile,true);
BufferedWriter MyFileBuffer;
MyFileBuffer = new BufferedWriter(MyFileWriter);
MyFileBuffer.write((int) System.currentTimeMillis()+"
sendRequest_start");
MyFileBuffer.newLine();
MyFileBuffer.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
compile之错误讯息:
target Java: framework
(out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes)
frameworks/base/core/java/android/net/http/RequestQueue.java:330: cannot find
symbol
symbol : constructor
Request(java.lang.String,org.apache.http.HttpHost,org.apache.http.HttpHost,java.lang.String,java.io.InputStream,int,android.net.http.EventHandler,java.util.Map<java.lang.String,java.lang.String>)
location: class android.net.http.Request
req = new Request(method, httpHost, mProxyHost, uri.mPath,
bodyProvider, bodyLength, eventHandler, headers);
^
frameworks/base/core/java/android/net/http/Request.java:239: cannot find symbol
symbol : variable MyFileBuffer
location: class android.net.http.Request
MyFileBuffer.write((int) System.currentTimeMillis()+"
sendRequest_end");
^
frameworks/base/core/java/android/net/http/Request.java:240: cannot find symbol
symbol : variable MyFileBuffer
location: class android.net.http.Request
MyFileBuffer.newLine();
^
frameworks/base/core/java/android/net/http/Request.java:241: cannot find symbol
symbol : variable MyFileBuffer
location: class android.net.http.Request
MyFileBuffer.close();
^
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
4 errors
make: ***
[out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes-full-debug.jar]
Error 41
而且将原始的Request.java覆盖回去之後
虽然最後三项error会消失但是第一个error却仍然存在
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.114.75.116
1F:推 ogamenewbie:明天我没看到补上失败的情形, e.printStackTrace 结果 12/02 08:46
2F:→ ogamenewbie:等失败情况的说明,就当违反版规五 12/02 08:48
※ 编辑: naifish 来自: 140.114.85.183 (12/02 19:35)
3F:→ naifish:抱歉误触版规! 12/02 19:35