這篇文章講述了不同的bootstrap sidebar menu的實作方法,
非常值得一看:D
https://medium.com/wdstack/bootstrap-sidebar-examples-e363021395ff#.iigrutt7s
星期四, 4月 06, 2017
星期日, 3月 26, 2017
星期三, 3月 15, 2017
[Objective-C] 快快樂樂用Twitter SDK: Oauth1 驗證記錄
記錄一下整合twitter的方法,因為在編sinature一直亂爆一通,所以記錄一下。
官方講解的流程https://dev.twitter.com/web/sign-in/implementing (沒講signtrue怎麼做出來,要看別的文件即可)
新增 app
https://apps.twitter.com/

官方講解的流程https://dev.twitter.com/web/sign-in/implementing (沒講signtrue怎麼做出來,要看別的文件即可)
前置動作
新增 apphttps://apps.twitter.com/

Oauth 1.0 Flow
星期二, 3月 07, 2017
[AngularUI] 如何關閉uiboostrap的modal
常用到ui-bootstrap的modal,如果要將產生的dialog 實體關閉(關閉dialog),
可以使用下面的程式 。
use $rootScope
when initializing your modal use $rootScope.modalInstance
You can access it anywhere from the application then. Hope this helps
- Remove the $uibModalInstance references
- Instead of "var modalInstance = $uibModal.open({"Use "$rootScope.modalInstance = $uibModal.open({
- Instead of $uibModalInstance.close('a');"Use "$rootScope.modalInstance.close('a');"
星期日, 3月 05, 2017
[Objective-C] 快快樂樂使用 facebook SDK : 上傳影片
記錄一下使用facebook iOS sdk4.x上傳影片
格式
影片長寬比必須介於 9x16 和 16x9 之間。
我們支援的上傳影片格式如下:
3g2、3gp、3gpp、asf、avi、dat、divx、dv、f4v、flv、m2ts、m4v、mkv、mod、mov、mp4、mpe、mpeg、mpeg4、mpg、mts、nsv、ogm、ogv、qt、tod、ts、vob 和 wmv。
https://www.facebook.com/help/828417127257368
3g2、3gp、3gpp、asf、avi、dat、divx、dv、f4v、flv、m2ts、m4v、mkv、mod、mov、mp4、mpe、mpeg、mpeg4、mpg、mts、nsv、ogm、ogv、qt、tod、ts、vob 和 wmv。
上傳大小限制
- 不可續傳的上傳可支援最高達 1GB 和 20 分鐘長度的影片上傳。
- 可續傳的上傳可支援最高達 1.75GB 和 45 分鐘長度的影片上傳。
流程
https://www.facebook.com/help/828417127257368
星期二, 2月 28, 2017
星期四, 2月 23, 2017
[Objective-C] 快快樂樂使用 facebook SDK : 上傳照片
記錄一下如何上傳照片到facebook,
基本上如果傳一般照片的話,透過SDK是最快的。
如果要傳360照片的話則要用Graph的API
使用SDK傳360相片無效踩雷
這個方法分享一般的照片是最快的,但UIImage會把360照片的metaProjectionType="equirectangular"拿掉,
詳細見此篇
http://www.jianshu.com/p/f71d06f67899
詳細見此篇
http://www.jianshu.com/p/f71d06f67899
星期二, 2月 21, 2017
[Objective-C] 如何從NSString轉NSURL
常用到的NSString檔案路徑要轉NSURL
NSString *filePath=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"360_theta.JPG"];
NSLog(@"file path: %@",filePath);
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:filePath];
NSLog(@"file url: %@",[fileURL filePathURL]);
// 輸出如下
// 輸出如下
星期日, 2月 19, 2017
[Objective-C] 快快樂樂使用 facebook SDK : 登入
星期四, 2月 16, 2017
[Objective-C] 自幹上傳 mutipart/form 到youtube
要測試一下上傳影片到youtube,
由於先前有在java自幹過一次 mutipart/form(四年前了@@) ,
這次改用objective c,順道記錄一下。
沒用什麼第三方的庫,NSURLSession自幹
NSURLSessionConfiguration : 做授權
NSMutableURLRequest : 做連線
NSURLSessionUploadTask : 上傳的任務
基本上參考這篇就會寫了
NSURLSessionUploadTask(上传任务)
由於先前有在java自幹過一次 mutipart/form(四年前了@@) ,
這次改用objective c,順道記錄一下。
Youtube Upload API
函式庫
NSURLSessionConfiguration : 做授權
NSMutableURLRequest : 做連線
NSURLSessionUploadTask : 上傳的任務
基本上參考這篇就會寫了
NSURLSessionUploadTask(上传任务)
星期五, 1月 20, 2017
[jQuery Plugins] summernote的 圖片標題與替代文字編輯外掛
預設的summernote是沒有提供image title與alt的編輯ui,
你可以安裝summernote-image-title來達成這個功能。
https://github.com/asiffermann/summernote-image-title
你可以安裝summernote-image-title來達成這個功能。
https://github.com/asiffermann/summernote-image-title
星期三, 1月 18, 2017
[Objective-C] iOS 基本技能: 呼叫相機
超常用的iOS呼叫相機基本技能,測試完記錄一下。
優點就是彈性比較大,速度快
使用UIImagePickerController (簡單、快速)
- (void) initCamera{
NSLog(@"initCamera");
dispatch_async(dispatch_get_main_queue(), ^{
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
//檢查是否支援此Source Type(相機)
if([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
NSLog(@"Access Camera Device");
//設定影像來源為相機
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.delegate = self;
imagePicker.allowsEditing = YES;
//顯示UIImagePickerController
[self presentViewController:imagePicker animated:YES completion:nil];
}
else {
//提示使用者,目前設備不支援相機
NSLog(@"No Camera Device");
}
});
}
//使用者按下確定時
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
//取得剛拍攝的相片(或是由相簿中所選擇的相片)
UIImage *image=[info objectForKey:UIImagePickerControllerEditedImage];
//設定ImageView的Image物件,例如:
//yourImageView.image = image;
[picker dismissViewControllerAnimated:YES completion:^{}];
}
//使用者按下取消時
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker {
//一般情況下沒有什麼特別要做的事情
[picker dismissViewControllerAnimated:YES completion:^{}];
}
使用AV Foundation
優點就是彈性比較大,速度快
[Objective-C] 初試一下 youtube live streaming (二) 實作步驟
找到幾篇有關於直播的教學,但都2014了,還是可以參考一下。
以下簡述使用Youtube直播步驟。
http://yhsiang.logdown.com/posts/2014/04/16/stream-to-youtube-with-live-streaming-api
https://youtube-eng.googleblog.com/2014/10/watchme-live-stream.html
http://justinyang1221.blogspot.tw/2014/10/live-stream-youtubestreaming-to-youtube.html
將即時串流推送到串流伺服器 (推流)
https://github.com/jgh-/VideoCore
https://github.com/LaiFengiOS/LFLiveKit => 最好操作整合,很多人拿來二次開發
https://github.com/pili-engineering/PLMediaStreamingKit
顯示即時串流 (拉流)
https://github.com/Bilibili/ijkplayer
完整流程
以下是最後實作完驗證過的流程,這篇也講的很清楚。
http://octuplus.co/Detalles/2084/Cannot-make-transition-of-my-Youtube-broadcast-to-live-using-Youtube-API
以下簡述使用Youtube直播步驟。
http://yhsiang.logdown.com/posts/2014/04/16/stream-to-youtube-with-live-streaming-api
https://youtube-eng.googleblog.com/2014/10/watchme-live-stream.html
http://justinyang1221.blogspot.tw/2014/10/live-stream-youtubestreaming-to-youtube.html
將即時串流推送到串流伺服器 (推流)
https://github.com/jgh-/VideoCore
https://github.com/LaiFengiOS/LFLiveKit => 最好操作整合,很多人拿來二次開發
https://github.com/pili-engineering/PLMediaStreamingKit
顯示即時串流 (拉流)
https://github.com/Bilibili/ijkplayer
完整流程
以下是最後實作完驗證過的流程,這篇也講的很清楚。
http://octuplus.co/Detalles/2084/Cannot-make-transition-of-my-Youtube-broadcast-to-live-using-Youtube-API
So a bit unclear rule is:
- ensure you have broadcast and livestream created and ready.
and ensure that broadcast lifecycle status is notCOMPLETE, otherwise recreate broadcast ... so ensure that your broadcast lifecycle status isready - bind broadcast to livestream
- start publishing video to livestream
- wait for livestream status
active - transition to
testing(yes, you have to do it instead of moving tolive) - wait for broadcast
lifeCycleStatusto becometesting - transition to
live - wait for broadcast
lifeCycleStatusto becomelive
You cannot skip
testing and cannot transition from complete to testing or ready.星期六, 1月 14, 2017
[ubuntu] 搞壞了sudo...must be owned by uid 0 and have the setuid bit set
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
XD不小心下錯了chown的指令,然後sudo就爆了。
搞了一小時還是沒弄好機器,
還是重裝VM的存檔-,,-
有招一日再來研究研究
http://ithelp.ithome.com.tw/articles/10053821
https://my.oschina.net/cxz001/blog/297404
http://unix.stackexchange.com/questions/16962/how-to-get-back-sudo-on-ubuntu
星期一, 1月 09, 2017
星期四, 1月 05, 2017
[Objective-C] AVPlayer 操作筆記
測試一下用Objective-C播放影片的sample
//NSBundle resourcePath
//NSBundle URLForResource
Sample檔放到專案
前面二個項目要打勾
取得應用程式目錄的檔案
//NSBundle resourcePath
NSString *filePath=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"SampleVideo_360x240_30mb.mp4"];
//NSBundle URLForResource
NSURL *sourceMovieURL = [[NSBundle mainBundle]URLForResource:@"SampleVideo_360x240_30mb" withExtension:@"mp4"];
星期四, 12月 29, 2016
[Objective-C] Youtube Oauth2 實作
記錄一下第一次寫iOS如何與Youtube Oauth2串接
所以改用NSURLSession來處理request,在把結果丟給webview來呈現
成功後你會取得一個auth code: 例如
http://localhost/oauth2callback?code=
首先要申請API KEY跟Oauth要用的Client ID
Oauth2的驗證url記錄
https://accounts.google.com/o/oauth2/auth?client_id=<你的CLIENTID>.apps.googleusercontent.com&redirect_uri=http://localhost&scope=https://www.googleapis.com/auth/youtube&response_type=code&access_type=offline403的爆炸
用webview直接丟Oauth2的連結,google會爆給你不允許存取的403 (disallowed_user-agent)
所以改用NSURLSession來處理request,在把結果丟給webview來呈現
成功後你會取得一個auth code: 例如
http://localhost/oauth2callback?code=
[Objective-C] 剛轉入寫iOS Objective的一些簡單筆記~
記錄一下菜到不行的初學者(我本人XD)Objective-C 寫的筆記
[self dismissViewControllerAnimated:true completion:nil];
By using below line we can go to parent view controller
變數宣告strong跟weak
用segue轉到另一個view如何退上去的方法
[self dismissViewControllerAnimated:true completion:nil];
用Navigation控制轉viewController
By using below line we can go to parent view controller
[self.navigationController popViewControllerAnimated:YES];
By using below line we can move to main/root view controller
By using below line we can move to main/root view controller
[self.navigationController popToRootViewControllerAnimated:YES];
By using below line we can move to any view controller
By using below line we can move to any view controller
[self.navigationController popToViewController:viewControllerObject animated:YES];
星期二, 12月 27, 2016
星期日, 12月 25, 2016
[Objective-C] 初試一下youtube live streaming (一) 相關資源蒐集
記錄一下工作需要研究的youtube live streaming的呼叫
前置作業
要先到https://console.developers.google.com/ 要先開一個專案並申請api金鑰
帳號啟用直播功能
如果帳號未啟動直播功能,會噴以下錯誤
{
error = {
code = 403;
errors = (
{
domain = "youtube.liveBroadcast";
extendedHelp = "https://www.youtube.com/features";
message = "The user is not enabled for live streaming.";
reason = liveStreamingNotEnabled;
}
);
message = "The user is not enabled for live streaming.";
};
帳號啟用直播功能
如果帳號未啟動直播功能,會噴以下錯誤
{
youtube官方文件
https://support.google.com/youtube/answer/2853700?hl=en&ref_topic=6136989YouTube Live Streaming API Overviewhttps://developers.google.com/youtube/v3/live/getting-started
YouTube Live Streaming API Code Samples (JAVA/PHP/PYTHON)
Objective C libs for REST
訂閱:
意見 (Atom)












