你知道evernote小部件用于检索我们在主界面或小部件中以非常方便的方式(检索整个笔记之前)看到的缩略图的方法或方法吗?我通过 http 请求看到了 post 方法,但是当不共享笔记时它似乎很复杂,也许通过直接的 evernote API 调用或通过读取应用程序存储的文件有更直接的方法?
问问题
300 次
2 回答
0
HTTP Post 方法并不太复杂。我不熟悉 Java,但这是 python 中的一个示例,应该非常简单地移植到 android:
import requests
ACCESS_TOKEN="INSERT YOUR AUTH TOKEN OR DEV TOKEN HERE"
payload={'auth':ACCESS_TOKEN} #map auth token to param "auth"
r=requests.post('https://sandbox.evernote.com//shard/s1/thm/note/e679c010-d8b2-4644-9eag-56bd31c84be7.jpg?size=75',data=payload, stream=True) #returns a binary of the picture type in header
f=open('thumbnail.jpg','wb') #open file for binary writing
f.write(r.content) #write binary contents of request to a file
f.close() #close the file
POST 请求的唯一参数是“auth”,它应该包含您的身份验证令牌(或开发令牌)。其余信息来自 URL 本身,格式如下:
[domain].evernote.com/shard/[shard]/thm/note/[guid]
在哪里
[domain] 是沙箱(用于沙箱)和 www(用于生产)
[shard] 是帐户所在的分片(应该类似于 s1)
[guid] 是笔记本向导
可选参数附加在 .jpg、.gif、.bmp 或 .png 的末尾以及 URL 末尾的可选参数 ?size=[1 to 299](默认为 300px 正方形)
例如,在带有 shard s1 的沙箱上,注意 guid "e669c090-d8b2-4324-9eae-56bd31c64af7" 以返回大小为 150px 正方形的 jpg,URL 如下所示:
https://sandbox.evernote.com/shard/s1/thm/note/e669c090-d8b2-4324-9eae-56bd31c64af7.jpg?size=75
于 2014-07-22T21:54:28.027 回答
0
小部件从 Evernote 应用程序的内容提供程序中提取缩略图。
像这样的东西应该工作。
在您的清单中:
<permission android:name="evernote.permission.READ_DATA" android:protectionLevel="normal" />
在您的 java 代码中:
final Uri AUTHORITY_URI = Uri.parse("content://com.evernote.evernoteprovider");
final Uri NOTE_URI = Uri.withAppendedPath(AUTHORITY_URI, "notes");
private FileDescriptor getNoteThumbnail(Context context, String noteGuid) throws FileNotFoundException {
Uri thumbnailUri = NOTE_URI.buildUpon().appendEncodedPath(noteGuid).appendPath("thumbnail").appendPath("data").build();
ContentResolver cr = context.getContentResolver();
return cr.openFileDescriptor(thumbnailUri, "r").getFileDescriptor();
}
于 2013-07-22T23:01:13.713 回答