概述

这是新浪微博官方 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. JAVA基础之理解JNI原理

    JNI是JAVA标准平台中的一个重要功能,它弥补了JAVA的与平台无关这一重大优点的不足,在JAVA实现跨平台的同时,也能与其它语言(如C.C++)的动态库进行交互,给其它语言发挥优势的机会. 有了J ...

  2. 【转】Android 布局学习之——LinearLayout属性baselineAligned的作用及baseline

    相信大家对LinearLayout已经相当熟悉,但你们是否了解它的属性baselineAligned呢? Android官方文档是这么描述的:

  3. Android之手机屏幕的获取

    屏幕区域的获取: activity.getWindowManager().getDefaultDisplay(); 应用区域的获取: Rect outRect = new Rect(); activi ...

  4. 第五十七篇、AVAssetReader和AVAssetWrite 对视频进行编码

    AV Foundation提供了直接处理媒体样本的低级功能,其中需要使用的两个重要的类,AVAssetReader和AVAssetWrite,AVAssetReader用于从AVAsset资源读取媒体 ...

  5. signal信号类型列表

    Linux支持的信号列表如下.很多信号是与机器的体系结构相关的 信号值 默认处理动作 发出信号的原因 SIGHUP 1 A 终端挂起或者控制进程终止 SIGINT 2 A 键盘中断(如break键被按 ...

  6. SharePoint Server 2013介绍v2

    SharePoint Server 2013介绍v2 http://wenku.baidu.com/link?url=rNYYoDmHcXmqhzOeA1sln5cS2xcnABYycBuz8Z4Oq ...

  7. C#核心语法

    目录 1. 特殊的数据成员........................................................................... 1 2. 数组(arr ...

  8. Paying for upgrades, by Bob Arnson

    Following content is reprinted from here, please go to the original website for more information. Au ...

  9. OD常用断点

    OD常用断点 很全很全 常用断点 拦截窗口: bp CreateWindow 创建窗口 bp CreateWindowEx(A) 创建窗口 bp ShowWindow 显示窗口 bp UpdateWi ...

  10. position containing block原点

    如果元素有属性 'position:absolute',containing block 由最近的 position 不是 static 的祖先建立,按下面的步骤:        1.如果祖先是块级元 ...