我有一个带GAE服务器的Android应用程序.我尝试按照developers.google.com中的描述对用户进行身份验证,我将用户参数添加到端点方法等.我得到一个非空的User,但此方法getUserId()返回null.它类似于这个相当老的问题: Cloud端点api中的函数User.getUserId()为非空的用户对象返回null 但是我仍然不知道如何解决它.你怎么处理这个错误?你见过它吗?
在Android客户端这里是我做的(简化):
credentials = GoogleAccountCredential.usingAudience(getApplicationContext(), "server:client_id:" + WEB_CLIENT_ID);
credentials.setSelectedAccountName(accountName);
WarriorEntityEndpoint.Builder endpointBuilder = new WarriorEntityEndpoint.Builder(AndroidHttp.newCompatibleTransport(), new GsonFactory(), credentials);
warriorEntityEndpoint = endpointBuilder.build();
new AsyncTask<Void, Void, Void>() {
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
try {
warriorEntityEndpoint.getWarrior().execute();
} catch (Exception e) {
}
return null;
}
}.execute();
Run Code Online (Sandbox Code Playgroud)
在GAE上:
@Api(name = "warriorEntityEndpoint", namespace = @ApiNamespace(ownerDomain = "szpyt.com", ownerName = "szpyt.com", packagePath = "mmorpg.monsters"),
version = "version1",
scopes = {"https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.profile"},
clientIds = {Constants.ANDROID_CLIENT_ID, Constants.WEB_CLIENT_ID},
audiences = {Constants.ANDROID_AUDIENCE}) …Run Code Online (Sandbox Code Playgroud) authentication google-app-engine android google-cloud-endpoints
我想在背景图片上设置透明度.我在xml中尝试了android:alpha,但它什么也没做.我使用setAlpha(int alpha),并且运行良好,但它已被弃用,所以我想要另一个解决方案(因为它可能会在将来被删除).有setImageAlpha和setAlpha(float alpha),但这些在api lvl 10中不可用(这是我的目标).所以我的问题是:对于API为10或更低的设备,setAlpha(int alpha)的替换是什么(我只想提一下,超过1/4的所有设备都使用API 10或更低版本).当我检查stackoverflow时,大多数人仍然建议setAlpha(int alpha),但正如我所说 - 它已被弃用...