最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

在kotlin里面要怎么返回一個掛起函數(shù)而有不用標(biāo)記?

那個動態(tài)代理是用java寫的,傳了個continuation進(jìn)去就不需要標(biāo)記掛起函數(shù)。但是如果是在kotlin中,這里會被要求標(biāo)記為掛起函數(shù)或者協(xié)程中使用,而java的proxy的invoice是沒有掛起函數(shù)標(biāo)記的,沒法用啊?應(yīng)該怎么處理???java的寫好了,但是改成kotlin不會?

public?static?<T>?T?create(Class<T>?service)?{
????return?(T)?Proxy.newProxyInstance(service.getClassLoader(),?new?Class<?>[]{service}
????????????,?(o,?method,?args)?->?{
????????????????String?url?=?"";
????????????????BaseParam?requestParam?=?null;
????????????????String?requestMethod?=?"GET";
????????????????Class<?>?returnT?=?method.getReturnType();
????????????????if?(returnT?==?null?||?BaseResponse.class.isAssignableFrom(returnT))?{
????????????????????throw?new?RuntimeException("返回類型不是BaseResponse");
????????????????}
????????????????if?(method.getGenericReturnType()?==?Continuation.class?&&?args?!=?null?&&?args.length?>?0)?{
????????????????????int?len?=?args.length;
????????????????????Class?clazz;
????????????????????for?(int?i?=?0;?i?<?len;?i++)?{
????????????????????????clazz?=?args[i].getClass();
????????????????????????if?(BaseParam.class.isAssignableFrom(clazz))?{
????????????????????????????requestParam?=?(BaseParam)?args[i];
????????????????????????}
????????????????????}
????????????????????if?(requestParam?==?null)?{
????????????????????????requestParam?=?new?BaseParam();
????????????????????}

????????????????????if?(method.isAnnotationPresent(APIGet.class))?{
????????????????????????url?=?method.getAnnotation(APIGet.class).value();
????????????????????}?else?if?(method.isAnnotationPresent(APIPost.class))?{
????????????????????????url?=?method.getAnnotation(APIPost.class).value();
????????????????????????requestMethod?=?"POST";
????????????????????}
????????????????????Continuation<?>?continuation?=?(Continuation<?>)?args[args.length?-?1];
????????????????????return?OkHttpProxy.INSTANCE.await(NetWorkManager.Companion.getInstance().call(url,?requestParam,?requestMethod),?returnT,?continuation);
????????????????}
????????????????return?null;
????????????});
}


正在回答

舉報

0/150
提交
取消

在kotlin里面要怎么返回一個掛起函數(shù)而有不用標(biāo)記?

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號