我正在iOS/Swift谷歌登录.我在github上做了一个demo.我的演示项目:https://github.com/tanggod/GoogleSignIn.git
根据谷歌(https://developers.google.com/identity/sign-in/ios/api/interface_g_i_d_profile_data#a8e229bffe211894473058c4ba247553c),可以像这样获取用户图像网址:
但是,当我尝试获取imageURLWithDimension(120)时,应用程序总是崩溃.我一直在为此奋斗半天,但仍然不知道为什么.任何人都可以帮助我.非常感谢你.
func signIn(signIn: GIDSignIn!, didSignInForUser user: GIDGoogleUser!, withError error: NSError!) {
print("=== UIViewController sign in")
if (error == nil) {
// Perform any operations on signed in user here.
let userId = user.userID // For client-side use only!
//let idToken = user.authentication.idToken // Safe to send to the server
let name = user.profile.name
let email = user.profile.email
if user.profile.hasImage{
// crash here !!!!!!!! cannot get imageUrl here, why?
// let imageUrl …
Run Code Online (Sandbox Code Playgroud) 在我的AndroidManifest.xml文件中,我有以下元数据标记,应该动态填充:
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="${FACEBOOK_APP_ID}"/>
Run Code Online (Sandbox Code Playgroud)
我的gradle文件如下所示:
manifestPlaceholders = [
GOOGLE_PROJECT_ID: "A888844613784",
FACEBOOK_APP_ID: "888570042741264"
]
Run Code Online (Sandbox Code Playgroud)
在"构建和组装"之后,清单文件中的FACEBOOK_APP_ID如下所示:
<meta-data
android:name="com.facebook.sdk.ApplicationId"
android:value="1481023616.000000" />
Run Code Online (Sandbox Code Playgroud)
不幸的是,这不是String,而是浮点值.这不正确或我想要的.
我知道有另一种方式来定义FACEBOOK_APP_ID
中string.xml
的文件.但是,由于我有很多口味,如果我们将所有与风味相关的参数放在build.gradle
文件中而不是strings.xml
文件中,那么它将很好并且易于维护.
有谁知道如何避免字符串浮动转换?
我想UINavigationController
在WKWebView
缩小/缩小时隐藏/显示a的navigationBar .
隐藏或显示a UINavigationBar
很容易,如下所示:
self.navigationController?.navigationBarHidden = true
Run Code Online (Sandbox Code Playgroud)
但问题是我不知道在哪里放置代码.
我正在考虑拦截缩放事件WKWebView
.可能还有其他方式,欢迎任何评论.