0

你知道evernote小部件用于检索我们在主界面或小部件中以非常方便的方式(检索整个笔记之前)看到的缩略图的方法或方法吗?我通过 http 请求看到了 post 方法,但是当不共享笔记时它似乎很复杂,也许通过直接的 evernote API 调用或通过读取应用程序存储的文件有更直接的方法?

4

2 回答 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 回答