應用AppKey
應用方法:訪問優推網站後臺,登錄進入應用列表,添加壹個需要集成優推組件的app,如下圖。添加成功後,就可以獲得應用的AppKey了。
2
申請社交平臺appkey
整合前需要在各大社交網站的開放平臺上為自己的應用申請賬號並通過審核,否則只能調用系統的分享菜單,無法跟蹤分享的回調事件和統計平臺。
三
參考友推庫項目
將youtui-lib項目庫和應用程序項目放在同壹個目錄下。
在包資源管理器中右鍵單擊項目的根目錄,選擇Properties,然後單擊,在Android選項中單擊Add添加youtui-lib。
四
註冊壹個平臺來分享。
1.配置每個共享平臺的密鑰。配置文件為youtui_sdk.xml,配置後放入項目的assets文件夾中。
2.如果需要共享到任何平臺,請將該平臺的Enable屬性設置為true。
3.如果需要在前面安排壹個平臺,只需要在youtui_sdk.xml文件中改變它的位置即可。
五
各平臺註意事項:
新浪微博:
新浪微博需要驗證申請簽名,請務必在新浪開放平臺管理中心申請信息-& gt;基本信息->;Android簽名包名稱信息配置此信息。
每當包名改變或。使用的密鑰庫發生變化,應用程序簽名也會發生變化。請到新浪微博開放平臺重新設置。
如果在運行Demo時重新編譯,所使用的。keystore文件還會導致應用簽名的改變,從而導致Demo新浪微博分享失敗。運行演示時,請使用演示項目包中提供的debug.keystore替換C:\Users\Administrator.android中的debug.keystore文件。
微信和朋友圈:
微信和朋友圈也需要驗證應用簽名。請在微信開放平臺管理中心修改應用-& gt;開發信息配置。
QQ和QQ空間:
QQ和QQ空間用的是騰訊的開放平臺api。請在騰訊開放平臺申請賬號並註冊應用。請不要使用QQ互聯網的配置(用於網站賬號登錄)。雖然都是騰訊的,但是兩個平臺並不通用。除了在youtui_sdk.xml中配置信息,還需要用自己應用的appid替換清單文件中android:scheme中Tencent之後的壹串數字。
& lt?xml版本="1.0 "編碼="utf-8 "?& gt
最後壹行配置描述:選擇調用系統共享菜單的功能。
六
在AndroidManifest.xml上註冊權限
七
在AndroidManifest.xml中註冊所需的活動
八
微信和朋友圈回調設置
如果需要分享微信和朋友圈,必須用應用包名+建壹個包。wxapi,在這個包下構建壹個WXEntryActivity.java,從cn . bidararound . you tui . wxapi . wentryactivity繼承這個類(不需要寫代碼)。
公共類WXEntryActivity擴展cn . bid around . you tui . wx API . WXEntryActivity { }
如圖:(將com.xingxinglangtuoche替換為您的應用包名稱,將用於微信回調)
九
初始化好友推送
開發者要自己啟動程序,最好在MainActivity的onCreate方法中調用YtTemplate.init(this)來初始化Youtui sdk,以便以後調用Youtui sdk(否則在共享等操作中會出現空指針異常),例如:
protected void onCreate(Bundle savedInstanceState){ super . onCreate(savedInstanceState);setContentView(r . layout . activity _ main);yt template . init(this);/Initialize Youtui/init view();}當應用程序退出時:
將以下代碼YtTemplate.release(this)插入項目的export活動的onDestroy方法的第壹行;此方法用於釋放內存和統計用戶使用量。壹旦調用了release,必須再次調用init才能使用友元推送的函數,否則會出現空指針異常。
10
創建壹個ShareData實例,調用該實例的set方法設置需要共享的數據:創建壹個ShareData實例,調用該實例的set方法設置需要共享的數據。有關此實例的詳細信息,請參見下文。如果只是分享應用,可以通過設置setIsAppShare(true)在Youtui後臺分享應用填寫的信息和下載鏈接。
ShareData包含字段:
Isappshare文本圖片路徑imageurl描述標題target _ url確定是否分享要分享的文本,短信應小於70個字符,微博應小於140個字符。如果需要分享鏈接,最好把鏈接網址放在最後壹個要分享的本地圖片地址。如果您想分享圖片,您需要選擇本地和在線圖片中的壹個。如果兩者都有,要優先分享要分享的本地圖片的網址。如果妳兩者都有,妳應該選擇壹個本地圖片來分享。如果兩者都有,優先分享待分享內容的描述、待分享內容的標題和待分享內容的跳轉鏈接。
11
通過創建該類的實例,調用該實例的set方法來設置這些參數,例如:
ShareData ShareData = new ShareData();shareData.isAppShare = false//如果設置為true,則共享信息從Youtui後臺填寫的應用信息中讀取,可以動態更新,後面的值不用設置。ShareData.setDescription("好友推送積分組件");ShareData.setTitle("好友分享");ShareData.setText("幾行代碼使開發者能夠為應用添加分享和發送積分的功能,並提供詳細的後臺統計。除了自帶的分享功能,開發者還可以在現有的分享組件app上集成集成功能,“);
sharedata . set target _ URL(" ");
sharedata . set imageurl(" ");
sharedata . setimagepath(" ");
12
平臺間共享數據的限制和註意事項:
因為各平臺的分享限制,分享時請盡量分享圖片和鏈接,依靠鏈接了解更多。
1)微信朋友圈微信分享是linkcard的形式,多余的文字不會顯示。
2)新浪微博極低配版新浪微博不支持發送多種類型的微博,在分享圖文時只分享圖片。新浪微博分享的最長消息是140字。
3)QQ和QQ空間分享的消息最長40字,QQ分享的標題最長30字,多余部分會忽略,描述部分會忽略。QQ空間分享的消息最長200字,QQ空間分享的標題最長600字,多余部分會忽略,描述部分會忽略。
4)騰訊微博中只分享圖片(imagePath或imageUrl)和文字,其他字段忽略。騰訊微博分享的最長消息是140字。
5)人人網只分享圖片(imagePath或imageUrl)和文字,其他字段忽略。
6)只共享文本,其他字段忽略。
7)只共享文本,其他字段忽略。
13
給朋友打電話分享推薦組件
為應用程序添加壹個共享推薦按鈕,例如:
14
在share button事件中調用youtui的組件。示例代碼:
public void onClick(View v){ if(v . getid()= = r . id . popup _ Bt)
{/調用優推分享推薦組件。YouTuiViewType類的常量是共享樣式參數。目前支持白名單和黑格子兩種類型。//創建共享模板。第壹個參數是活躍度,第二個參數是共享窗口樣式,第三個參數是是否需要積分/
yt template black temp = new yt template(this,YouTuiViewType。BLACK_POPUP,false);//黑網格樣式不需要積分activity/yt template black temp = New yt template(this,youtuiviewtype。white _ list,true);///白名單樣式需要積分活動。
15
ShareData ShareData = new ShareData();
shareData.isAppShare = false//如果設置為true,則從Youtui後臺填寫的應用信息中讀取共享信息,後面的值無需設置即可動態更新。
ShareData.setDescription("好友推送積分組件");
ShareData.setTitle("好友分享");
ShareData.setText("只需幾行代碼,開發者就可以為應用添加分享和發送積分的功能,並提供詳細的後臺統計。除了自帶的分享功能,開發者還可以在現有的分享組件app上單獨集成集成功能,快來試試吧”);
sharedata . set target _ URL(" ");
sharedata . set imageurl(" ");
sharedata . setimagepath(" ");
black temp . setsharedata(shareData);//設置默認的共享數據;有關共享數據設置,請參見4.6。
//* *如果妳想為某個平臺設置不同的分享信息。單獨設置*///black temp . add data(yt platform . platform _ QQ,sharedata);//調出共享窗口black temp . show();
//如果需要自定義分享事件,可以創建壹個監聽事件,然後處理YTshareListener 1 = new YTshareListener(){
@覆蓋
公共void onSuccess(ErrorInfo arg0)
{
}
@Override public void onPreShare()
{
}
@覆蓋
公共void onError(ErrorInfo arg0)
{
}
@覆蓋
公共void onCancel() {
}
};//在新浪微博(YT平臺)添加壹個共享監聽器。platform _ sinaweibo,Listener 1);
//為QQ添加共享監控//
black temp . addlistener(yt platform。平臺_QQ,聽者2);}