Android Studio 獨立引入(非友盟)微博分享和回調時問題

最近同事在作一個小項目時,因爲產品的要求,Wap頁面的分享規定不能使用友盟的社會化組件。他則不得不手動一個一個渠道的引入分享,好在渠道很少就三個,可是第一微博分享引入的時候問題就出現了。java

問題一:libweibosdkcore.so文件沒法識別導入。android

試過將.so文件的那幾個平臺的文件夾放到jniLib和libs文件夾下,發現都仍是沒法識別和自動導入.so文件。最後百度後的解決辦法以下,在app主工程的gradle文件中添加以下代碼:api

 packagingOptions {  
    exclude 'META-INF/LICENSE.txt'  
    exclude 'META-INF/NOTICE.txt'  
}  
  
  
/** 導入so文件 */  
task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {  
    destinationDir file("$projectDir/libs")  
    baseName "Native_Libs2"  
    extension "jar"  
    from fileTree(dir: "libs", include: "**/*.so")  
    into "lib"  
}  
  
tasks.withType(JavaCompile) {  
    compileTask -> compileTask.dependsOn(nativeLibsToJar)  
 
做用:增長packagingOption聲明,並在下面的gradle方法中將libs文件夾下的各個平臺.so文件的文件夾打包成一個名爲Native_Libs2的jar包,而後Build兩次project(配置了compile freeTree的一次便可,不過須要gradle sync一下)便可。這時發現不會再報.so找不到的exception了。
ps:應該還有更好的方案能夠讓AS識別到.so,等找到後補充。
 
問題二:微博分享不回調
1.WBShareActivity如圖:
[java]  view plain  copy
 
 在CODE上查看代碼片派生到個人代碼片
  1. public class WXEntryActivity extends WXCallbackActivity {  
  2. }  
2.修改回調WBShareActivity的配置:
[java]  view plain  copy
 
 在CODE上查看代碼片派生到個人代碼片
  1. <!-- 微博 -->  
  2. <activity android:name=".wbapi.WBShareActivity">  
  3.     <intent-filter>  
  4.         <action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY"/>  
  5.   
  6.         <category android:name="android.intent.category.DEFAULT"/>  
  7.     </intent-filter>  
  8. </activity>  
  9. <activity  
  10.     android:name="com.sina.weibo.sdk.component.WeiboSdkBrowser"  
  11.     android:configChanges="keyboardHidden|orientation"  
  12.     android:exported="false"  
  13.     android:windowSoftInputMode="adjustResize">  
  14. </activity>  
相關文章
相關標籤/搜索