随着从Facebook Graph API v1.0升级到v2.0,Facebook正在使用"应用程序范围的用户ID",因此我无法在我的应用程序中看到"原始"用户ID.
我总是使用实时更新和图形API调用,如" https://graph.facebook.com/{postId}/comments "来分析应用所在的Facebook页面上的用户活动.但由于这些数据包含原始用户ID,因此我无法将活动与我的注册用户进行匹配!
那么有没有办法从应用程序范围的用户ID获取原始的Facebook用户ID?或者反过来说?
编辑:
我最终使用此处提到的API方法为所有用户获取应用程序范围的ID:https://stackoverflow.com/a/29154912/3432305并将其存储在我的数据库中以及旧ID.然后,每当RTU到达时,对于"旧用户",我会检查哪个用户具有此应用程序范围的ID并处理更新.至少Facebook设法在API v1.0被弃用的前几天修复了评论中提到的错误(从应用程序范围的用户ID获取Facebook用户ID),因此对于我的应用程序的新用户来说,它就像一个魅力.至今...
我需要在我的移动设备上下载文件,并使其可以访问其他应用程序(使用Android和iOS).
我设法将文件下载到SD卡(cordova.file.externalDataDirectory),但这仅存在于Android上,即便如此,我也不能依赖每个拥有SD卡的设备.
当我下载到设备存储(cordova.file.dataDirectory)时,该文件对我的应用程序是私有的,因此其他应用程序无法访问.该文件可以在InAppBrowser中打开,但我更喜欢使用相应的默认应用程序.
有没有办法在所有设备上公开可用的目录路径?
在/sf/answers/1496306871/中建议的解决方案返回的路径在Android上都是私有的...
编辑:
我想我应该描述一下我的用例,以便我更清楚我想要实现的目标:我想使用相应的默认应用程序(pdf查看器,图像查看器等)从我的应用程序聊天中打开文件.因为Cordova File Opener插件只接受来自本地文件系统的文件,所以我需要先保存它们.但他们之后不一定需要从我的应用程序外部访问...
我目前正在使用ionic/cordova进行混合应用.该应用程序需要功能,它每隔1分钟左右将我们的后端与其位置相关联,如果附近有任何有趣的内容,后端API将会回答.如果答案是肯定的,应用程序将排队本地通知,希望这将使用户打开应用程序.当应用程序处于后台模式时,即使手机处于锁定状态,也需要此功能.该应用程序需要能够部署到应用程序商店,谷歌播放和最终Windows手机.
我目前正在使用这三个插件的组合:
https://www.npmjs.com/package/cordova-plugin-geolocation - 位置 https://github.com/katzer/cordova-plugin-background-mode - 用于bg模式 https://github.com/katzer/cordova-plugin-local-notifications - 用于本地通知
当设备未锁定时,这当前适用于Android(因此它在前景和后台模式下工作)但是当设备被锁定时,它无法获得GPS坐标.
我的代码目前看起来像这样:
// Enable background worker
(cordova as any).plugins.backgroundMode.enable();
intervalPromise = $interval(intervalWork, 30000, 0, false);
function intervalWork() {
$log.log('Trying to fetch pos');
var options = { maximumAge: 30000, timeout: 30000, enableHighAccuracy: false };
navigator.geolocation.getCurrentPosition(success,
err,
options);
}
function success(pos) {
$log.log("lat: " + pos.coords.latitude + " long: " + pos.coords.longitude);
var Checkin = $resource(ApiDataEndpoint.url + 'checkin/:lat/:lng/', {});
var res= Checkin.get({ lat: pos.coords.latitude, lng: pos.coords.longitude });
if (res) {
$cordovaLocalNotification.schedule({ …Run Code Online (Sandbox Code Playgroud) javascript geolocation cordova hybrid-mobile-app ionic-framework
在最初加载我的网站时,我需要从用户上传的Google云存储中加载一些图片.为了加快我的加载时间,我想以较低的分辨率获取图像.
有没有办法用URL指定它,就像一个额外的URL参数?...
我使用的签名网址如下所示:
baseURL + "?GoogleAccessId=" + GoogleAccessStorageId + "&Expires=" + Expiration + "&Signature=" + UrlEncodedSignature
Run Code Online (Sandbox Code Playgroud)
如下所示:https://cloud.google.com/storage/docs/access-control#Signed-URLs
我目前正在使用Ionic 1.3.16版本.在这里,我需要在我的选择控件中选择多个选项.
这是我的离子HTML代码:
<div class="list">
<label class="item item-input item-select">
<div class="input-label">
Lightsaber
</div>
<select>
<option>Blue</option>
<option selected>Green</option>
<option>Red</option>
</select>
</label>
</div>
Run Code Online (Sandbox Code Playgroud) javascript angularjs angularjs-ng-repeat ionic-framework ionic
cordova ×2
javascript ×2
android ×1
angularjs ×1
download ×1
facebook ×1
geolocation ×1
ionic ×1
ios ×1