小编Bab*_*Dan的帖子

Android广告非常会降低性能

我按照指南在我的Android应用上试验过BANNER广告.当广告加载和正在呈现时,观察到显着的FPS下降.这对用户来说是非常令人沮丧的体验,因为View动画是我的应用程序的核心部分,并且它们在低FPS中看起来很糟糕.
当我将adView设置为时,一切运行正常View.GONE.我不知道这个问题可能来自哪里.我不确定UI线程如何变得如此沉重地加载一个简单的BANNER广告......这里有什么建议吗?
我的模拟器和真正的Android设备都存在此问题.

multithreading android ads

11
推荐指数
1
解决办法
4134
查看次数

如何制作移动应用的服务器后端?

我是Android开发人员,我想创建一个应用程序,在地图上显示用户并根据他们的位置执行任务.

应用程序的整个模型必须在服务器中运行.我需要一个API:

  • 接收用户位置
  • 根据用户的位置执行计算
  • 使用结果向特定用户发送响应

问题是我在服务器端编程方面有0经验.

你能告诉我一个制作服务器的方法吗?

我查看了Google Colud平台视频.该视频解决了应用与服务器之间的连接问题,但我真正需要的是编写模型并将其部署在云上.

作为没有服务器端编程经验的开发人员,我为这样的应用程序构建API的方式是什么?

您能否建议我为移动应用程序构建云后端的过程?

android google-cloud-platform server

10
推荐指数
1
解决办法
9157
查看次数

谷歌如何验证Android SHA1指纹和包装?

我正在努力使我的Google Translate API工作,但目前我找不到办法.这就是我在Google Developer Console中设置内容的方法:
我已使用调试证书设置了SHA1指纹.和包名 - "bg.webmap.wordy"(实际名称).当我尝试进行调用时,在JSON中返回"ipRefererBlocked"错误.但是当我删除指纹和包名称时,它工作得很好,但是每个人都可以使用这个键,所以它非常不安全.所以我的问题是身份验证.
在调用API时,我的应用会自动发送此指纹吗?我应该自己发送以及如何发送?可能问题出在调试证书中?

android google-api google-translate

9
推荐指数
1
解决办法
1708
查看次数

使用几个ImageView-s,Activity运行缓慢

我的活动总共包含4张图片.它们都与1080x1920设备的分辨率相匹配.当我使用那些通过XML直接加载到我的活动中的图像运行活动时,它在我的Genymotion模拟器中运行得非常慢并且落在真正的Android设备上.

这是设置:

<android.support.design.widget.AppBarLayout
...>
<android.support.design.widget.CollapsingToolbarLayout
...>
<LinearLayout
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:orientation="vertical"
            app:layout_collapseMode="parallax">

            <ImageView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:id="@+id/imageView"
                android:src="@drawable/shot_header"
                android:scaleType="centerCrop" />

 </LinearLayout>
 <android.support.v7.widget.Toolbar
            .../>
 </android.support.design.widget.CollapsingToolbarLayout>
 </android.support.design.widget.AppBarLayout>
Run Code Online (Sandbox Code Playgroud)

第一张图片位于CollapsingToolbarlayout中.图像的分辨率为1080x649 PNG.

content_activity:
此图像填充父宽度.它的分辨率为1080x772 PNG.

 <ImageView
    android:layout_width="match_parent"
    android:layout_height="250dp"
    android:id="@+id/main_image"
    android:layout_below="@+id/shot_error_field"
    android:src="@drawable/forehand_midpng"
    android:adjustViewBounds="true"
    android:scaleType="centerCrop"
    android:layout_marginTop="15dp"/>
Run Code Online (Sandbox Code Playgroud)

其他2个图像位于LinearLayout中,其分辨率为500x399

<LinearLayout
    android:orientation="horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/main_image">

    <ImageView
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:id="@+id/imageView3"
        android:src="@drawable/forehand_mid_wrong"
        android:layout_weight="1"/>

    <View
        android:layout_width="0dp"
        android:layout_height="1dp"
        android:layout_weight="1" >
    </View>

    <ImageView
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:id="@+id/imageView4"
        android:src="@drawable/forehand_mid_wrong"
        android:layout_weight="1"/>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

总而言之,我有一个带有4个ImageView的活动,填充了适当大小的图像,对于现代Android设备来说应该没问题.问题是由于高内存消耗,此活动运行速度极慢且滞后.

难道我做错了什么?如何进一步优化这些图像?

我查看了其他线程- 内存不足的问题,但似乎没有人提出解决这个问题的方法.

performance android imageview

7
推荐指数
1
解决办法
7698
查看次数

在Android中使用Google Translate API

我一直在互联网上搜索谷歌翻译API使用,但我找不到下降教程或解释.这就是我所做的:

在我的Google API控制台中,我使用答案使用SHA1指纹在Public API访问下生成了一个键.以下是我的API控制台的外观: 谷歌控制台

在Android工作室中,我使用以下代码使用OkHttp库构建并发送我的请求:

OkHttpClient client = new OkHttpClient();
    String apiKey = "My API key";
    String apiLangSource = "en";
    String apiLangTarget = "de";
    String apiWord = "Hello";
    String googleApiUrl = "https://www.googleapis.com/language/translate/v2?key=" + apiKey + "&source=" + apiLangSource + "&target=" + apiLangTarget + "&q=" + apiWord;
    Request request = new Request.Builder().url(googleApiUrl).build();

    Log.d(TAG, "API STRING" + googleApiUrl);

    Call call = client.newCall(request);

    call.enqueue(new Callback() {
        @Override
        public void onFailure(Request request, IOException e) {
            Log.d(TAG , "HTTP CALL FAIL");
        }

        @Override …
Run Code Online (Sandbox Code Playgroud)

android google-api google-translate

6
推荐指数
1
解决办法
1361
查看次数

是否可以通过 SSH 使用 REST API?

我正在设计一个 API,用于IoT 设备和客户端之间的机密通信。必须确保客户端与设备的连接是安全的,并且没有中间人可以调节通信或攻击设备,包括路由服务器。

网络图如下:

在此处输入图片说明

  • 物联网设备始终位于同一网络后面的家中。
  • 客户端设备是移动的并且改变网络
  • 客户端不断地连接和断开与物联网设备的连接

客户端必须能够通过在每个 IoT 设备上运行的 API 服务器在 IoT 设备上执行命令。路由服务器仅对请求进行隧道传输,但不得信任

我的问题是:

我应该使用什么协议来实现这个方案?

我对SSH有点困惑。 它似乎非常适合通过隧道进行安全客户端 <--> 物联网设备通信。

但是是否可以使用 SSH 创建一个 RESTful API?

我不需要直接访问设备的外壳,我需要一个抽象层,由运行在 IoT 设备上的 API 提供。

如果 SSH 不是一个选项,我能否以任何其他方式安全地从客户端路由请求并在 IoT 设备上执行命令?

security ssh networking iot

5
推荐指数
1
解决办法
7101
查看次数

在GridView中选择多个项目

我正在开发类似画廊的活动.一切运行良好但有一个关键功能缺失,我找不到一个体面的答案或解释.我需要的是让用户能够通过长按选择多个项目.

这是期望的结果:

在此输入图像描述

您可以清楚地看到所选图片和ActionBar中的选项.



我的设置是这样的:

1. 我的XML中有一个GridView:

<GridView xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/gridview"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:columnWidth="90dp"
          android:numColumns="auto_fit"
          android:verticalSpacing="5dp"
          android:horizontalSpacing="5dp"
          android:stretchMode="columnWidth"
          android:gravity="center"/>
Run Code Online (Sandbox Code Playgroud)

2.它附加到一个类,它扩展BaseAdapter并使用Picasso加载图像:

public class GalleryAdapter extends BaseAdapter {
    Context mContext;
    List<String> mDataset;

    public GalleryAdapter(Context context, List<String> dataset) {
        mContext = context;
        mDataset = dataset;
    }

    @Override
    public int getCount() {
        return mDataset.size();
    }

    @Override
    public Object getItem(int position) {
        return mDataset.get(position);
    }

    @Override
    public long getItemId(int position) {
        return 0;
    }

    @Override
    public View getView(int position, …
Run Code Online (Sandbox Code Playgroud)

android gridview

4
推荐指数
1
解决办法
7072
查看次数

REST 服务器到客户端的通信

我正在为 Spring 中的 Adndroid 应用程序开发 Java API。现在我的 API 是 100% REST 和无状态的。为了让客户端接收数据,它必须先发送一个请求。

但是,我需要的是服务器在准备好执行任务时将数据发送到客户端/而不是客户端发送到服务器 fisrt/。

我认为必须在两方之间建立某种会话。

我的问题是:当服务器准备好执行任务时,如何实现服务器向客户端发送数据的功能?/不知道任务需要多长时间。/

我应该为此开发什么样的 API?

一个愚蠢的解决方法是每 n 秒向服务器发送一个请求,但我正在寻找一种更智能的方法。

java api rest spring

4
推荐指数
1
解决办法
3080
查看次数

如何在Android Studio中开发应用的广告和广告免费版本?

我一直想知道开发一个有两个版本的应用程序的最佳方式是什么.一个广告和一个广告免费.我应该制作2个git分支,付费的和免费的,或者什么?

android ads

-4
推荐指数
1
解决办法
674
查看次数