Sunday, August 19, 2012

Thiết bị Android mới phục vụ cho việc test

Trong đợt đi công tác bên Mỹ vừa rồi, Bách có mua thêm được 2 thiết bị Android nữa để phục vụ cho việc test Affresco là: điện thoại Sony Xperia S và máy tính bảng Google Nexus 7. Tuy nhiên, do phạm vi của đề tài, chúng ta sẽ chỉ sử dụng Sony Xperia S để test mà thôi. Còn về Google Nexus 7, có lẽ sẽ được sử dụng trong giai đoạn phát triển thêm về sau này.
Một vài thông số căn bản về Sony Xperia S:
OS: 4.0.4 (ICS)
Memory: 32GB Internal storage, 1GB Ram
Size: 720 X 1280 pixels, 4.3 inches
Như vậy, bây giờ nhóm chúng ta đã có 3 thiết bị Samsung galaxy ace, Samsung galaxy S2, Sony Xperia S.
Mong rằng với thiết bị mới này, công việc của nhóm sẽ thuận lợi hơn trên cả hai phương diện: test & develop.

API để lưu tài liệu vào Favorites

Sau khi được các chuyên gia Alfresco giải đáp thắc mắc.

Giải pháp về chức năng này được đc đưa ra như sau:



The favorites is used to mark a document as a favorite. In the UI it shows as a filled in star and then shows up when you filter on favorites.


To mark a document as a favorite, you POST to: 
http://localhost:8080/alfresco/s/api/people/{user id}/preferences

The following JSON:
{"org":{"alfresco":{"share":{"documents":{"favourites":"{node ref of the favorite document"}}}}}

Where "node ref of the favorite document" looks like: 
workspace://SpacesStore/1a0b110f-1e09-4ca2-b367-fe25e4964a4e

Jeff

Tuesday, August 7, 2012

Bổ sung tài liệu RESTful API Alfresco 4.0.2

Comments:
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Freferences%2FRESTful-Comments.html

Archive:
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Freferences%2FRESTful-Archive.html

Rating:
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Freferences%2FRESTful-Rating.html

Version:
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Freferences%2FRESTful-Version.html

Workflow:
http://docs.alfresco.com/4.0/index.jsp?topic=%2Fcom.alfresco.enterprise.doc%2Freferences%2FRESTful-Workflow.html

Vai trò của chuẩn mở trong phát triển phần mềm

Chúng ta sẽ nghiên cứu chi tiết tầm quan trọng và vai trò của các chuẩn mở trong phát triển phần mềm qua bài viết sau đây.

Vai trò chung của việc sử dụng các chuẩn mở

Chúng ta có thể thu được rất nhiều lợi ích nếu một tổ chức thực hiện việc mua và triển khai các chuẩn mở. Trước hết, chúng ta sẽ giảm thiểu được khả năng bị "độc quyền hóa" hay lệ thuộc vào một công nghệ đặc biệt hoặc các nhà cung cấp. Các tiêu chuẩn đã được định sẵn và được cộng đồng hóa, vì thế nên các hãng thứ ba hoàn toàn có thể triển khai các giải pháp, miễn là tuân thủ theo các tiêu chuẩn được định ra ban đầu.

Một lợi ích chính nữa mà ta có thể nhận thấy đó là mọi thứ sẽ trở nên dễ dàng hơn khi các hệ thống của các hãng khác nhau sử dụng các công nghệ khác nhau muốn tương thích hay giao tiếp với nhau. Kết quả là, việc chuyển đổi và trao đổi dữ liệu sẽ được cải thiện đáng kể. Không cần thiết phải sử dụng cùng một phần mềm hoặc cùng một phần mềm từ một nhà cung cấp để đọc hoặc viết dữ liệu. Ví dụ, một tổ chức đa quốc gia đòi hỏi tất cả các văn phòng sử dụng các phần mềm văn phòng có thể đọc và viết dữ liệu sử dụng định dạng Open Document, một định dạng chuẩn, mở, nền tảng XML từ OASIS ( Organization for the Advancement of Structured Information Standards).

Sử dụng các chuẩn mở cũng sẽ mang đến một sự bảo vệ tốt hơn cho các tập tin dữ liệu được tạo ra bởi một ứng dụng, mà ít bị lệ thuộc bởi sự lỗi thời của các ứng dụng. Nếu định dạng của tập tin được sử dụng là độc quyền rồi sau đó ứng dụng trở nên lỗi thời, người dùng sẽ gặp phải khó khăn khi chuyển đổi các tập tin dữ liệu sang định dạng khác cần thiết cho ứng dụng mới. Tuy nhiên, nếu định dạng dữ liệu tuân theo một chuẩn mở, hoặc ứng dụng mới sẽ có thể sử dụng nó hoặc sẽ dễ dàng hơn để chuyển đổi dữ liệu để ứng dụng mới có thể sử dụng nó.

Nếu các chuẩn mở được tuân thủ, các ứng dụng sẽ dễ dàng hơn để chuyển từ một nền tảng sang một nền tảng khác bởi vì việc triển khai kỹ thuật theo các hướng dẫn và quy tắc đã biết, và các giao diện, cả trong nội bộ và bên ngoài, đã biết. Thêm vào đó, các kỹ năng học được từ một nền tảng hoặc ứng dụng có thể được sử dụng.

Vai trò cụ thể của việc sử dụng các chuẩn mở

Các chuẩn mở đem lại rất nhiều lợi ích cho các hoạt động hoặc dịch vụ IT. Theo dõi chi tiết ở duới đây.

Các định dạng file

Các hệ thống thông tin hiện đại tạo ra dữ liệu phải được lưu trữ trong một hình thức nào đó của các định dạng tập tin điện tử để lưu trữ hiệu quả, có thể thu hồi và trao đổi. Nếu thông số kỹ thuật của chúng không được công khai, chỉ có phần mềm và các hệ thống của chủ sở hữu của các định dạng độc quyền mới có thể dễ dàng truy cập chúng. Ngoài ra, việc trao đổi thông tin là điều cần thiết cho các chức năng của xã hội hiện đại. Việc trao đổi này sẽ bị cản trở nghiêm trọng nếu các định dạng tập tin không mở được sử dụng như các sản phẩm từ một nhà cung cấp không thể lấy, truy cập hoặc lưu trữ các thông tin từ các sản phẩm của các nhà cung cấp khác. 
Chúng ta có thể thấy một điều vô cùng quan trọng là các định dạng tập tin điện tử phải tuân theo một số chi tiết kỹ thuật để có thể truy cập đuợc bởi tất cả các bên quan tâ. Nói cách khác, chúng cần phải được triển khai bằng cách sử dụng các chuẩn mở.

Các ứng dụng văn phòng

Chúng ta có thể thấy sự thiếu tương thích rõ rệt giữa các tài liệu được tạo ra bởi MS Office và các hãng khác đã cản trở người dùng khá nhiều trong việc sử dụng như thế nào. Ví dụ này đã minh họa cho chúng ta thấy được các định dạng tệp tin mở và chuẩn hóa là thật sự cần thiết để cung cấp cho người dùng sự tự do và linh động trong việc lựa chọn và sử dụng các sản phẩm  từ các nhà cung cấp khác nhau, qua đó ngăn chặn chúng khỏi bị "khóa" bởi một sản phẩm hay nhà cung cấp nào đó.

Các dịch vụ Internet và các ứng dụng

Có lẽ Internet chính là một ví dụ điển hình nhất chỉ ra cho chúng ta thấy được khi các công nghệ sử dụng phần lớn các chuẩn mở, chúng ta sẽ có được những lợi ích và khả năng tiếp cận dễ dàng đến mức nào. Phần lớn cơ sở hạ tầng mạng của internet được triển khai dựa trên các chuẩn mở được xây dựng bởi IETF. Ngoài ra, nhiều dịch vụ và ứng dụng đang chạy cũng như đang được lên kế hoạch cho tương lai đang được triển khai dựa trên các chuẩn mở và khuyến nghị từ các cơ quan đáng chú ý: IETF, W3C và OASIS. Kết quả là, ngày nay, một dịch vụ có thể truy cập vào các dịch vụ chính được cung cấp trên Internet bằng cách sử dụng vô số các môi trường khác nhau, từ máy tính hàng hóa, PDAs và các thiết bị di động cho đến các TV sets,... Nếu không tuân thủ các chuẩn mở, Internet sẽ khó có thể được phổ biến như ngày nay.


====================== Hết =======================

Tuesday, August 07, 2012 - Meeting minutes

1. Chức năng Upload File:

    - Tiến độ hiện tại: 60%
    - Max file size: Cho setting preferences (user tự setting)
        Default 10MB.
    - Hỗ trợ những file type: All


2. Chức năng Edit File:

    - API diff: Node version information
            GET /alfresco/service/api/version


3. Chức năng Favorite File:

    - API:
        + POST /alfresco/service/api/people/{userid}/preferences ?
            (Cần a Linh confirm lại)


4. Contact Alfresco Community: (Bách take care)

    - Document
    - Làm 2 task:
        + Project master schedule
        + Project goal statements


5. Bổ sung WBS:

    - Break nhỏ task UT:
        + Create script
        + Execute script
    - Thêm task "Create Demo using API" cho mỗi function.

Quan trọng hàng đầu hiện tại vẫn là Tạo được demo sử dụng các API

Monday, August 6, 2012

Giải pháp "Upload file" từ Android Client lên Alfresco

Sau mấy ngày tìm hiểu API của Alfresco và các tài liệu khác trên mạng.

Em tổng hợp lại 2 giải pháp để hoàn thành chức năng Upload như sau:

I. Giải pháp 1:
1. Cách tiến hành:

- Bước 1: Xác thực người dùng (API: login)

- Bước 2:
+ Duyệt đến thư mục cần Upload tài liệu
+ Tạo mới 1 file tài liệu, với nội dung rỗng (API: Create Document)

- Bước 3: Update nội dung file vừa tạo, thay bằng nội dung của file cần được Upload

=> Hoàn thiện chức năng Upload

2. Ưu nhược điểm


a) Ưu điểm : 
- Có nhiều loại API hỗ trợ cùng 1 mục đích (tạo tài liệu, update tài liệu ...)

b) Nhược điểm:
- Cần nhiều API để thực hiện
- Tài liệu mô tả API rất sơ sài, không rõ ràng

II. Giải pháp 2:

1. Cách tiến hành:

- Bước 1: Xác thực người dùng (API: login)

- Bước 2: Upload trực tiếp file lên folder.


2. Ưu nhược điểm


a) Ưu điểm : 
- Upload trực tiếp được file
- Chỉ cần sử dụng đúng 2 API

b) Nhược điểm:
- Chỉ có 1 RESTful API hỗ trợ việc Upload
- Tài liệu mô tả API rất sơ sài, không rõ ràng

III - Áp dụng
Hiện tại team đã áp dụng thành công "Giải pháp 2".
+ Sử dụng thêm các library của java để hỗ trợ

Việc hoàn thiện đầy đủ chức năng Upload sẽ mất thêm thời gian để thực hiện cho hoàn chỉnh theo đúng requirement


Sunday, August 5, 2012

Work Breakdown Structure (WBS) update 01/08/2012

Theo như nội dung cuộc họp ngày 31/07/2012, WBS đã được update như sau:

File OpenProj (.POD) gốc: Tại đây

Saturday, August 4, 2012

Email Verification & Email notifications (GitHub)

GitHub mới yêu cầu user phải xác minh tài khoản GitHub thông qua địa chỉ email đã đăng ký: https://github.com/blog/1215-email-verification

Sau khi xác minh xong, vào https://github.com/settings/notifications để thiết lập các thông báo khi có code được commit , pull request .....

Đây là tính năng mà GitHub đã thiếu từ lâu!

@GitHub Good Job!

Friday, August 3, 2012

Tổng quan CMIS, Apache Chemistry và ứng dụng trong Alfresco, Android

I -  Tổng quan CMIS
1. Khái niệm
Mục tiêu của Content Management Interoperability Services (CMIS) là cung cấp một tập các dịch vụ (services) tương tác với các hệ quản trị nội dung. Chuẩn này được sáng lập bởi IBM, Microsoft và EMC và mở rộng ra năm 2007 với Alfresco, Open Text, SAP, và Oracle. Hiện tại CMIS sở hữu bởi Hội đồng kỹ thuật (Technical Committee) OASIS.
CMIS không phải là một đặc tả ngôn ngữ, nó không diễn giải cách mà một hệ quản trị nội dung làm việc và không phải là các dịch vụ giúp mở rộng tính năng cho các hệ quản trị nội dung. Mục tiêu của CMIS là định nghĩa tập các hàm thông dụng khi làm việc với các hệ quản trị nội dung và các dịch vụ. Cả REST và SOAP đều được hỗ trợ bởiCMIS. Những người quan tâm đến CMIS thường nói rằng chuẩn này có tầm quan trọng với các hệ quản trị nội dung ngang với tầm quan trọng của SQL với các ứng dụng database cuối những năm 80 đầu những năm 90. Ngay lúc này đây, cộng đồng phát triển đang rất quan tâm đến CMIS, các công cụ client và tích hợp dựa trên CMIS đang dần lộ diện. CMIS ngày càng có được hỗ trợ nhiều từ các nhà cung cấp ECM lớn trên toàn thế giới.
Xuất phát từ vấn đề hầu hết các doanh nghiệp lớn đều sử dụng nhiều công nghệ trong việc trình bày nội dung và nhiều hệ quản trị nội dung khác nhau. Nếu muốn tập hợp nội dung và trình bày dưới một giao diện đồ họa chung, các doanh nghiệp, tổ chức phải tốn nhiều thời gian và tiền bạc để viết riêng cho mình những service riêng giúp tích hợp chúng lại với nhau. Vấn đề ở chỗ các hệ quản trị nội dung có giao diện đặc trưng của riêng mình. Lúc này, CMIS sẽ giải quyết vấn đề bằng cách cung cấp một tập những dịch vụ nằm phía trên các hệ quản trị nội dung. Chỉ cần tầng trình bày (website, portal) hỗ trợ REST hay SOAP, nó có thể làm việc với bất kỳ hệ quản trị nội dung(ECM) nào tương thích với CMIS, bất chấp cài đặt bên dưới. Front-end không còn phụ thuộc vào back-end. Bất kỳ ứng dụng front-end nào cũng có thể giao tiếp với hệ quản trị nội dung bất kỳ. Một nhà phát triển Drupal có thể dùng module Drupal CMIS để giao tiếp với Alfresco và không cần phải làm gì thêm khi chuyển từ Alfresco sang dùng Open Text hay Sharepoint. Và những ai đã từng tham gia tìm hiểu CMIS module của Drupal sẽ có thể chuyển qua phát triển các module tương tự cho các ứng dụng khác mà không cảm thấy khó khăn vì kết quả trả về của Alfresco hoàn toàn tương tự.

Đặc tả kỹ thuật

Đặc tả của CMIS gồm 226 trang nhưng hầu hết là tài liệu cơ bản về API, ta có thể bỏ qua đến khi nào cần có thể tra lại. Tài liệu đặc tả là thứ nhất thiết phải có khi làm việc với CMIS.
Trong tài liệu đặc tả, CMIS định nghĩa: một Domain Model, một ngôn ngữ truy vấn, các giao thức kết nối, một tập các dịch vụ chuẩn.
Dưới đây là những vấn đề chính trong đặc tả kỹ thuật của CMIS:
Domain Model:
Domain Model định nghĩa các khái niệm và quan hệ giữa các hệ quản trị nội dung giúp tìm được tiếng nói chung, thứ ngôn ngữ chung cho tất cả. Ví dụ, một Repository là một kho chứa các đối tượng. Kho chứa có một tập các khả năng “capabilities” có thể khác biệt tùy thuộc vào kiến trúc của từng repository. Một Repository có thể có các khả năng tùy biến khác nhau nhưng vẫn tương thích với CMIS.
Đối tượng(Objects) là các phần tử mà Repository quản lý. Tất cả Object đều có một Object Type. Một Object Type là một lớp các đối tượng sẽ có chung tính chất và các thuộc tính. Cấu trúc của lớp đối tượng mang tính thừa kế nên các lớp con sẽ thừa kế các thuộc tính của cha chúng.
Chỉ có 4 dạng đối tượng chính: Document, Folder, Relationship, và Policy. Trong đó Policy là chính sách phần quyền cho đối tượng.
Dưới đây là hình ảnh của mô hình CMIS Domain Model:
CMIS Domain Model
Hình 2.4: Mô hình dữ liệu của CMIS
Như trong hình trên, cả 4 lớp đối tượng đều chia sẻ một tập các thuộc tính như type ID, tên hiển thị, đối tượng có thể truy vấn được không, đối tượng có thể được quản lý bởi policy không…
Một đối tượng có nhiều thuộc tính, mỗi thuộc tính có một tập các tính chất như property ID, tên hiển thị, tên truy vấn… CMIS cho phép mở rộng các lớp mặc định của mình tạo nên những lớp đối tượng đặc biệt. Việc làm thế nào những lớp đối tượng đặc biệt được định nghĩa phụ thuộc vào cấu trúc bên dưới của Repository.
Đối tượng Document là đối tượng duy nhất có thể thực hiện phiên bản hóa. Mỗi phiên bản của một Document là một bản sao của nó và có một ID của riêng mình. Nhiều phiên bản của một đối tượng sẽ chia sẻ một series ID.
Một Content Stream là một dòng byte dữ liệu, ta có thể hình dung như một file. Một đối tượng Document không nhất thiết phải có một content stream. Folder không có content stream. Repository có thể có những quy trình khác nhau cho việc cập nhật content stream. Đó là phần việc của hệ quản trị nội dung. Nhiệm vụ của CMIS là cung cấp thông tin và thông báo cho các ECM biết chúng cần làm gì.
Ngôn ngữ truy vấn (Query Language )
CMIS đặc tả một ngôn ngữ truy vấn dựa trên SQL – 92. Ngôn ngữ này hỗ trợ join khá giới hạn. Tùy vào Repository, nó có thể thực hiện cả truy vấn toàn văn bản (full text) hoặc chỉ metadata.
Các giao thức kết nối. (Protocol Bindings)
Để tương thích hoàn toàn với CMIS, một repository cần cung cấp 2 dạng kết nối yêu cầu bởi đặc tả: RESTful AtomPub và Web Services (SOAP). Khi đó, cách mà các repository sẽ tiến hành cài đặt kết nối tùy thuộc vào từng repository.
Hình dưới đây cho thấy cách Alfresco cài đặt CMIS ở cấp cao:
alfresco cmis
Hình 2.5: Mô hình cơ chế hoạt động bậc cao của CMIS trên Alfresco
Sử dụng dạng kết nối RESTful AtomPub, một client sẽ bắt đầu với URL của trang thông tin từ Repository (dịch vụ getRepositoryInfo). Máy khách có thể dựa vào những liên kết trên được Repository cung cấp để tạo những request GET, POST, PUT, DELETE với Repository.
Response từ request tạo qua kết nối AtomPub hầu hết đều ở dạng một feed Atom XML hay một entry Atom XML. Thông thường response được mở rộng để kèm theo các tag đặc biệt của CMIS. Ta có thể dùng thư viện đặc tả Atom như Apache Abdera để rút trích kết quả.
cmis connection
Hình 2.6: Mô hình tổng quan giao thức kết nối của CMIS
Webservice kết nối dùng SOAP. Có 2 tài liệu XSD tạo nên WSDL cho service: một định nghĩa data model, cái còn lại định nghĩa format của message. Những dịch vụ được Webservice hỗ trợ hoàn toàn giống với danh sách các dịch vụ được liệt kê dưới đây.

Các dịch vụ (Services)

Không phụ thuộc vào dạng kết nối, CMIS cung cấp một tập các service bao gồm:
Repository Services: dùng tìm hiểu thông tin và năng lực của repository
Navigation Services: dùng để di chuyển trên hệ thống cây thư mục của repository.
Object Services: dùng thực hiện các hàm CRUD trên các đối tượng.
Multi-filing Services: nếu repository hỗ trợ việc đặt một file vào nhiều folder, dịch vụ này sẽ thực hiện.
Discovery Services: dùng để truy vấn tài liệu lưu trữ.
Versioning Services: dùng để check out và làm việc về phiên bản với các đối tượng.
Relationship Services: dùng để truy vấn các đối tượng dựa trên quan hệ của chúng.
Policy Services: dùng thiết lập, hủy và truy vấn chính sách trên các đối tượng.
ACL Services: có thể không được hỗ trợ bởi một số repository, dịch vụ này dùng để lấy thông tin và quản lý ACL của một đối tượng.
Các dịch vụ trên chia sẻ một vài đặc tính chung. Ví dụ:
  • Hầu hết các dịch vụ trả về một danh sách có thể được chuyển thành một tập kết quả có thể phân trang.
  • Dịch vụ trả về đối tượng có thể thường trả về thông tin kèm theo về những đối tượng đó nếu bạn yêu cầu ví dụ relationships, ACL, rendition và những hành vi hợp lệ.
  • Mọi service đều có thể trả về các ngoại lệ (exception).
2. Ứng dụng trong Alfresco

Để tích hợp Alfresco với CMS ta có 2 giải pháp: sử dụng WebService API được Alfresco cung cấp hoặc CMIS. So với Alfresco WebService API, CMIS có các ưu điểm sau:
Chỉ cần viết một lần, chạy với tất cả các Repository. CMIS là chuẩn đặc tả chung do các nhà phát triển ECM lớn nhất lập ra. Ngày càng nhiều ứng dụng ECM tham gia hỗ trợ. Do đó, việc tích hợp chỉ cần làm một lần. Nếu cần kết nối thêm một Repository của ECM khác, nhà phát triển chỉ cần thiết lập các thông số.
Tích hợp đa Repository. CMIS cho phép làm việc cùng lúc với một hoặc nhiều ECM. Ưu điểm này có được do phần lớn các nhà phát triển ECM đồng thuận hỗ trợ CMIS.
Hỗ trợ Quản lý quy trình nghiệp vụ xuyên suốt các Repository. Hiện nay phiên bản 0.9 của đặc tả CMIS chưa hỗ trợ. Tuy nhiên tính năng này được các nhà phát triển hứa hẹn sẽ ra mắt trong phiên bản tiếp theo.
Người dùng chỉ cần học cách dùng một giao diện cho tất cả Repository. Điều này có được do khả năng tích hợp đa Repository. Việc này rất tiện lợi cho người dùng vì một lần tiếp xúc với giao diện mới họ sẽ gặp nhiều khó khăn gần như học lại từ đầu.
Việc sử dụng CMIS tạo cho giải pháp tích hợp khả năng mở rộng cao trong tương lai, khi cần tích hợp thêm một hoặc nhiều Repository của nhà cung cấp khác.
II - Tổng quan Apache Chemistry
1. Khái niệm
Apache Chemistry là một hệ thống mã nguồn mở, tích hợp và hỗ trợ CMIS. 
Apache Chemistry bao gồm các hệ thống nguồn mở sau đây
  • OpenCMIS - Thư viện CMIS client và server cho Java
  • cmislib - Thư viện CMIS client cho Python
  • phpclient - Thư viện CMIS client cho PHP
  • DotCMIS - Thư viện CMIS client cho  .NET


2. OpenCMIS và ứng dụng trong Android 


Apache Chemistry OpenCMIS là một thư viện mã nguồn mở, hỗ trợ ngôn ngữ lập trình Java theo chuẩn CMIS.


- Bản release mới nhất : 
Release Version: Release 0.7.0
Date: 2012-04-26
Hỗ trợ Android: Không


- Phiên bản Beta đã hộ trợ cho Android
Version: 0.8.0 (beta)
Hỗ trợ Android: CÓ
Tài liệu về API: KHÔNG
Code Sample : KHÔNG


Tham khảo : Giải pháp mở, Wikipedia

Định hướng MHST 2012 02

Hi team,

Tin Nam đưa ảnh hưởng tới chiến lược của team.

Tổng quan về Alfresco 2012 Roadmap (và specific hơn về Android)
http://wiki.alfresco.com/wiki/2012_Product_Roadmap#Alfresco_Mobile_Android_1.0

Tháng 11 năm 2012 sắp tới, ở hội thảo ở Berlin, có lẽ Alfresco mới chính thức debut Mobile SDK (bao gồm Android SDK 1.0?)
http://devcon.alfresco.com/sanjose/sessions/alfresco-android-sdk

Timeline/Deadline của MHST 2012 02: Trong hè 2012 phải release.

Lựa chọn cho MHST 2012 02:
1) Tiếp tục base trên FreshDocs? (plan hiện tại)
2) Chuyển sang dùng Alfresco Android SDK (beta) luôn và ngay? (làm lại từ đầu)

Hướng 2 risky.

Chắc vẫn theo hướng 1 nhỉ?

Alfresco Tech Talk Live on Alfresco's SDKs for Android and iOS

Alfresco's SDK cho Android và iOS sẽ sớm được phát hành đến tay lập trình viên.
Thời gian cụ thể chưa được công bố

Link tham khảo: http://www.slideshare.net/alfresco/alfresco-tech-talk-live-mobile-sd-ks

Link video xem toàn bộ hội thảo: http://www2.alfresco.com/TTL_Episode_56

Tổng hợp tài liệu Alfresco API

Danh sách tham khảo các API cần dùng cho dự án:

Pro Alfresco Appendix A

- Alfresco API Refenrece

Repository RESTful API Reference