简体   繁体   English

Google App Engine DeobfuscatorBuilder

[英]Google App Engine DeobfuscatorBuilder

I'm trying build an App Engine connected Android application and am having some problems using the RequestFactory. 我正在尝试构建一个与App Engine连接的Android应用程序,并且在使用RequestFactory时遇到一些问题。 In particular I noticed that the DeobfuscatorBuilder is appending an "L" to the beginning of my paths for some reason. 特别是,我注意到DeobfuscatorBuilder出于某种原因在路径的开头附加了“ L”。 Here are my logs: 这是我的日志:

03-24 14:56:44.789: I/dalvikvm(382): Failed resolving Lcsc440/nuf/shared/SMILMessageProxy;     interface 77 'Lcom/google/web/bindery/requestfactory/shared/ValueProxy;'
03-24 14:56:44.789: W/dalvikvm(382): Link of class 'Lcsc440/nuf/shared/SMILMessageProxy;' failed
03-24 14:56:44.789: W/dalvikvm(382): VFY: unable to find class referenced in signature   (Lcsc440/nuf/shared/SMILMessageProxy;)

I've traced the source to Google's GWT SDK in the class - com.google.web.bindery.requestfactory.apt.DescriptorBuilder 我已在com.google.web.bindery.requestfactory.apt.DescriptorBuilder类中将源追溯到Google的GWT SDK。

containing the following method: 包含以下方法:

@Override
  public String visitDeclared(DeclaredType x, State state) {
    return "L"
        + BinaryName.toInternalName(state.elements.getBinaryName((TypeElement) x.asElement())
        .toString()) + ";";
 }

This seems wrong to me but I'm a novice, any help would be greatly appreciated. 这对我来说似乎是错的,但我是新手,对您的帮助将不胜感激。

Thanks 谢谢

A class name starting with L is used in JNI to access Java classes from C code - "Ljava/lang/String" refers to the class java.lang.String source JNI中使用以L开头的类名称来从C代码访问Java类- "Ljava/lang/String"是指类java.lang.String

The error you get is therefore in native code that does not find a class in csc440.nuf.shared.SMILMessageProxy 因此,您得到的错误是在本机代码中,在csc440.nuf.shared.SMILMessageProxy找不到类

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM