OK, perhaps it is very simple, but I just can not figure it out right now.
I have imported google sample project Card Reader in Android Studio 1.5.1, it compiles at compileSdkVerison 23, it works on my Mobile.
Then I walked through the SDK while came to source code to android.nfc.tech.BasicTagTechnology
, I found TransceiveResult
inside android.nfc.tech.BasicTagTechnology#transceive
couldn't not be resolved then I found the class TransceiveResult
is missing in my D:\Android\sdk\platforms\android-23\android.jar
, but presents in Android source code here D:\Android\sdk\sources\android-23\android\nfc\TransceiveResult.java
then I realized it could be hidden from public, not exported, actually it is
/**
* Class used to pipe transceive result from the NFC service.
*
* @hide
*/
public final class TransceiveResult implements Parcelable
Then I have done some random things, after I have sync the project, clean and rebuild, invalidate caches / restarted, still not able to resolve TransceiveResult
by the way, I am wondering since the symbol has been lost in SDK, how can the project compile smoothly?
EDIT for I finally Aha
We call android.nfc.tech.BasicTagTechnology#transceive
in our code rather than TransceiveResult
, in the compile-time we no need to resolve TransceiveResult
, we only need to resolve android.nfc.tech.BasicTagTechnology#transceive
which is referenced in our code, I was lost at that moment.