我正在制作一些需要用户选择地点的Android应用程序.我打算到用户谷歌的地方API.Link:https://developers.google.com/places/android/
通过Place Picker,这个API提供了很好的方法.https://developers.google.com/places/android/placepicker
现在假设我只想显示食物类型的用户地点(餐馆,酒店等).使用Places Browser API可以通过在请求中添加"type = restraunts"属性来完成.
有没有办法只使用Google Places Picker for android显示某些类型的地方?
android google-maps google-maps-api-3 android-location google-places-api
我希望为使用我的Android应用程序的新用户实现注册(然后进行身份验证).基于django的框架位于后端.
工作流程与任何其他应用程序相同:
从后端开始,用户需要进行身份验证(登录)才能使用大部分功能.此外,还需要一定程度的安全保障.从django方面来看,由于内置的注册视图和装饰器,这个任务对于HTML页面来说相当容易.但是,我的问题是如何为Android实现这个.我完全修复了整个系统的工作流程.
根据我在互联网上搜索的内容,人们提出了两个解决方案:
现在问题是我没有为应用程序实现任何网站,我更喜欢在移动应用程序上进行此操作.我已经阅读了许多关于django的auth,outh和REST包的教程,但所有这些教程似乎都是为webapp量身定制的.
我的问题是:考虑应用程序必须专业用途的什么是合适的流程?
我想在后端使用 Django 和 Django-REST 框架来对本机 android 应用程序上的用户进行身份验证。我目前正在使用基于令牌的身份验证系统。(更多细节)
我已经实施了指南中列出的完全相同的过程来设置令牌身份验证。
现在我希望我的用户能够获取令牌以换取凭据。我使用以下代码发出 POST 请求:
JSONObject cred = new JSONObject();
try {
cred.put("password",mPassword);
cred.put("username",mEmail);
} catch (JSONException e) {
e.printStackTrace();
}
try {
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(Common.getServerUrl()+"/api-token-auth/");
StringEntity credentials = new StringEntity( cred.toString());
credentials.setContentType(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
httpPost.setHeader("Accept", "application/json");
httpPost.setHeader("Content-type", "application/json");
httpPost.setEntity(credentials);
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
// Read content & Log
inputStream = httpEntity.getContent();
Log.i("Asynctask", cred .toString());
...
Run Code Online (Sandbox Code Playgroud)
但是,当我将其发布到“views.obtain_auth_token”的 django 后端时,我总是出现此错误:
在服务器上:
"POST …Run Code Online (Sandbox Code Playgroud) 我试图通过np.concat()方法连接两个有效的数组.
我的代码:
print X_train.shape, train_names.shape
X_train = np.concatenate([train_names,X_train], axis=0)
Run Code Online (Sandbox Code Playgroud)
输出:
(3545, 93355) (3545, 692)
ValueError Traceback (most recent call last)
<ipython-input-58-59dc66874663> in <module>()
1 print X_train.shape, train_names.shape
----> 2 X_train = np.concatenate([train_names,X_train], axis=0)
ValueError: zero-dimensional arrays cannot be concatenated
Run Code Online (Sandbox Code Playgroud)
正如你所看到的,数组的形状对齐,我仍然得到这个奇怪的错误.为什么?
编辑:我也尝试过axis=1.相同的结果编辑2:使用的Eqauted数据类型.astype(np.float64).结果相同.
在我的Android应用程序的textview中,如果URL的长度大于某个限制,我想省略所有URL(已经使用可点击范围链接)以获得省略号(或截断).
这种行为的灵感来自twitter和facebook.
例如,链接http://www.getfluttr.com/flap/3rL7/now-only-if-modi-would-listen-to-opposition-party-/它应该如下所示:
我知道这必须涉及跨度.我似乎无法找到一个允许我在保持链接的同时替换文本的跨度.