概述

这是新浪微博官方 Android SDK Demo 使用 Android Studio 导入、编译并运行通过的版本。

源码:WeiboSdkDemo

官方项目请点击: weibo_android_sdk,当前版本 V3.0.1。

说明

在使用 Android Studio 导入新浪微博 SDK 时,遇到了一些问题,通过查看官方项目的 Issues 及 Google 后终于将问题解决,记录下来仅供参考。

运行环境

  • Android Studio 1.2.1.1
  • Android SDK 22
  • JDK 1.7
  • Gradle 2.2.1

请根据自己的开发环境修改 build.gradle 的配置。

使用说明

其实没什么好说的,直接拿来导入到 Android Studio 里用就行了,主要是根据 Demo 参考一下 SDK 的用法。

Project 说明

官方项目中有两个 Project:

  • WeiboSDK
  • WeiboSDKDemo

WeiboSDKDemo 中引用了 WeiboSDK,我们在自己的实际项目中引用 WeiboSDK 即可。

问题及解决

官方项目导入到 Android Studio 后,WeiboSDK 没什么问题,问题主要出现在 WeiboSDKDemo,具体如下:

jniLibs

需要在src\main目录下创建jniLibs目录,并将原 WeiboSDKDemo 中 libs 目录下三个文件夹及其中 so 文件拷贝至 src\main\jniLibs

图片资源报错

编译时,会有一个 png、三个 .9.png 报错。

一个png:修改后缀为 jpg 后,用 PhotoShop 将背景处理为透明再保存为 png 格式。

三个.9.png:在 Android Studio 直接打开,然后重新处理一下。(.9.png制作请 Google)

编译错误 com.android.dex.DexException: Multiple dex files define

Windows:用 Winrar 等压缩工具直接打开 weibosdkcore.jar,找到 com/sina/weibo/sdk/BuildConfig 并将其删除。

Mac OS:据 Issues里说用 Mac 自带的解压、压缩工具会有问题,请自己尝试。

debug.keystore

如果不设置 debug.keystore,Demo App 可以成功运行,但是不能授权、分享,会有 sso package error 的报错。

设置方法:

1.选中 Project 根目录点击 F4 打开 Project Structure,选中 Modules 下面的 app, 再点击右边的Signing,点击绿色‘+’按钮,然后进行设置。如下图:

2.再选中 Build Types,并选择 Signing Config,如下图:

版权

所有版权信息请参考官方项目: weibo_android_sdk

Thanks

使用 Android Studio 跑新浪微博SDK Demo遇到的问题及解决的更多相关文章

  1. Android Studio更改项目SDK的版本

    Elipse 中的安卓项目,在Android Studio中可以通过File -->new -- > Import Project的方法建立起来.但是有时候需要用到更改项目的API Lev ...

  2. Android Studio无法下载sdk的问题

    参考自:解决Android Studio无法下载sdk的问题 国内网站无法登进google,android sdk无法下载. 尝试使用FQ,重装软件都没有成功. 最后找到了解决办法:http://pi ...

  3. Android Studio AVD和SDK Manager灰色不能点击的问题。

    之前安装完Android Studio之后,迫不及待的打开,新建项目,发现模板新建之后里面没有文件,并且AVD Manager和SDK Manager 那一排的按钮灰色不能点. 之后查阅资料无果,最后 ...

  4. mac android studio 出现 Error: SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.

      Error: SDK location not found. Define location with sdk.dir in the local.properties file or with a ...

  5. Android Studio下载/更新SDK

    今天安装配置Android Studio的时候,用SDK Manager下载SDK的时候只显示了一个7.0,别的都刷新不出来(被墙了).去网上搜索怎么解决,发现很多帖子的方法已经过时了(跟现在的AS版 ...

  6. Android Studio 下载地址 & SDK 更新教程

    Android Studio 下载地址: http://www.android-studio.org/ SDK 更新教程: http://www.androiddevtools.cn/ SDK 推荐使 ...

  7. android App使用新浪微博sdk的使用总结

    问题1:注册app的key 问题2:在微博开放平台,我的应用中心中,设置应用的基本信息的时候其中有一项,是设置你的应用的签名,签名是需要在安卓设备上安装一个生成签名的app(这个app界面很丑,这点我 ...

  8. Android Studio 设置/更改 SDK 路径

    网上看到有人说需要重启 Android Studio,感觉麻烦,就自己试了试其他方法,果然还是有的! 很简单,只需打开 File 菜单下的 Project Structure 就可以设置了,如图所示:

  9. Android Studio多Module使用 aar 依赖包 丢包解决

    FAQ: AAR打包引用丢包问题, jar, aar, dependency 嵌套层级依赖的丢失 问: aar包中,如何包含第三方依赖库? 如果直接作为module 依赖是没有问题的,但是如果打包成a ...

随机推荐

  1. 限制特定ip访问oracle

    在9i中真正起作用的是sqlnet.ora文件,我们修改sqlnet.ora其实是最好最快的方法. 在sqlnet.ora中增加如下部分 ----------------------------- # ...

  2. web-app1--移动端等比例代码

    1  :   <meat name="viewport" content="width=device-width,initial-scale=1"/> ...

  3. Nginx - SSI Module

    SSI, for Server Side Includes, is actually a sort of server-side programming language interpreted by ...

  4. redis学习-day1

    1.nosql数据库的一种. 2.Redis 是一种开源的,先进的key-value存储.它通常被称为数据结构服务器.因为键可以包含字符串.哈希.链表.集合和有序集合. 特点: 3.为了保证效率,数据 ...

  5. 使用python发送Email

    import smtplib from email.mime.text import MIMEText def SendEmail(): email = "" #设置收件地址 ma ...

  6. IOS 如何选择delegate、notification、KVO?(转)

    前面分别讲了delegate.notification和KVO的实现原理,以及实际使用步骤,我们心中不禁有个疑问,他们的功能比较类似,那么在实际的编程中,如何选择这些方式呢? 在网上看到一个博客上详细 ...

  7. opencv 手写选择题阅卷 (三)训练分类器

    opencv 手写选择题阅卷 (三)训练分类器 1,分类器选择:SVM 本来一开始用的KNN分类器,但这个分类器目前没有实现保存训练数据的功能,所以选择了SVN分类器; 2,样本图像的预处理和特征提取 ...

  8. MySQ binlog三种模式

    MySQ binlog三种模式及设置方法 1.1 Row Level  行模式 日志中会记录每一行数据被修改的形式,然后在slave端再对相同的数据进行修改 优点:在row level模式下,bin- ...

  9. ubuntu配置多个DNS

    Ubuntu设置了静态IP地址,设置DNS,打开/etc/resolv.conf cat /etc/resolv.conf# Dynamic resolv.conf(5) file for glibc ...

  10. Mac OS X开发者准备工作

    迁移到Mac平台做开发后,需要有一系列的准备工作来使我们的工作更顺畅. 1. 安装Homebrew包管理器 苹果系统自带了一个包管理器,但是并不是很好用.现在,现在比较流行的是Homebrew,非常好 ...