小编Sha*_*hiM的帖子

使用矢量drawable时,通知会引发错误

当我使用向量drawable设置通知的小图标时,我得到以下异常:

android.app.RemoteServiceException:从包com.qbes.xxx发布的错误通知:无法创建图标:StatusBarIcon(pkg = com.qbes.xxxuser = 0 id = 0x7f020082 level = 0 visible = true num = 0)

这是我的代码:

mNotificationBuilder = new android.support.v4.app.NotificationCompat.Builder(this)
                .setDefaults(android.support.v4.app.NotificationCompat.DEFAULT_LIGHTS)
                .setSound(null)
                .setSmallIcon(R.drawable.logo_white)
                .setColor(getResources().getColor(R.color.colorPrimary))
                .setCategory(android.support.v4.app.NotificationCompat.CATEGORY_PROGRESS)
                .setContentTitle("Trip in Progress...")
                .setAutoCancel(false)
                .setProgress(0, 0, progress)
                .setOngoing(true)
                .setPriority(android.support.v4.app.NotificationCompat.PRIORITY_MAX)
                .setOnlyAlertOnce(true)
                .setContentIntent(pendingIntent);

mNotificationBuilder.setContentText(body);

mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
Notification note = mNotificationBuilder.build();

mNotificationManager.notify(Constants.NOTIFICATION_ID_Dash, note);
Run Code Online (Sandbox Code Playgroud)

和我build.gradle(仅相关部分):

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.3"

    defaultConfig {
        applicationId "com.qbes.xxx"
        minSdkVersion 16
        targetSdkVersion 22
        versionCode 720
        versionName "0.7.20"
        vectorDrawables.useSupportLibrary = true
    }
    buildTypes {
        release {
            minifyEnabled …
Run Code Online (Sandbox Code Playgroud)

java android android-appcompat android-notifications android-support-library

25
推荐指数
1
解决办法
3928
查看次数

无法在同一设备上安装调试版和发行版

我已经在我的项目中配置了构建变体,applicationIdSuffix以便我可以在我的设备上安装调试版和发行版.这是我的build.gradle(相关部分):

 buildTypes {
        debug {
            buildConfigField "String", "BASE_URL", '"http://dev.xyz.com"'

            applicationIdSuffix ".debug"
        }
        release {
            buildConfigField "String", "BASE_URL", '"http://api.xyz.com"'
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
Run Code Online (Sandbox Code Playgroud)

但是当我尝试安装两者时,它失败了.我尝试了不同的方法:

1.生成调试和发布apks,并将它们传输到我的手机存储.第一个安装,第二个给出错误"应用程序未安装" - 没有进一步的信息.无论我首先安装哪个版本,都是一样的.

2.从存储安装调试版本,然后尝试从Play商店安装发行版本,但Play商店出错:

无法安装应用程序错误代码:-505.

3.从商店安装发布版本,然后尝试从android studio运行项目,这是我的'运行'日志:

    Launching app
    $ adb push D:\myPROJECTS\MyApp\app\build\outputs\apk\app-debug.apk /data/local/tmp/com.example.myapp.debug
    $ adb shell pm install -r "/data/local/tmp/com.example.myapp.debug"
    java.lang.UnsatisfiedLinkError: No implementation found for java.lang.String android.os.SystemProperties.native_get(java.lang.String) (tried Java_android_os_SystemProperties_native_1get and Java_android_os_SystemProperties_native_1get__Ljava_lang_String_2)
      at android.os.SystemProperties.native_get(Native Method)
      at android.os.SystemProperties.get(SystemProperties.java:52)
      at android.os.Environment$UserEnvironment.<init>(Environment.java:123)
      at android.os.Environment.initForCurrentUser(Environment.java:98)
      at android.os.Environment.<clinit>(Environment.java:92)
      at android.os.Environment.getLegacyExternalStorageDirectory(Environment.java:597)
      at …
Run Code Online (Sandbox Code Playgroud)

android android-gradle-plugin android-build-type

15
推荐指数
1
解决办法
1987
查看次数

处理Socket.io android客户端v1.4中的回调

我无法找到关于如何正确处理Ack和事件的任何文档Socket.io(v1.4.3).所有现有文章/问题都涉及旧版本,尤其是IOCallback课程.但是最新版本中没有该类.

我设法找到的所有内容是这样的:

要获取Socket事件的回调:

mSocket.connect();

mSocket.on(Socket.EVENT_CONNECT, new Emitter.Listener() {
    @Override
    public void call(Object... args) {
        //What to do here
    }
})
Run Code Online (Sandbox Code Playgroud)
  1. 我该如何处理(Object... args).一个小代码示例会很棒.
  2. 似乎有十几个事件,我是否必须单独处理所有这些事件?或者,我可以实现哪些最佳事件集来了解连接?

要获得单个emit事件的回调:

mSocket.emit("payload", jsObj.toString(), new Ack() {
    @Override
    public void call(Object... args) {
        //TODO process ACK
    }
});
Run Code Online (Sandbox Code Playgroud)
  1. 再说一遍,我该如何处理(Object... args)

java sockets android callback socket.io

8
推荐指数
1
解决办法
3211
查看次数

如何从savedInstanceState恢复ViewPager

所以我有一个我似乎无法解决的问题.我在其中一项活动中有一个ViewPager,比如MainActivity.当活动在后台被杀死时,我正在实现保存和检索实例状态所需的所有方法.但是当活动尝试恢复其状态时,片段将被恢复,但它们不会附加到viewpager,所以我得到的只是一个白色屏幕.

这是相关代码:

MainActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //..
    if (savedInstanceState==null) {
        setupViewPager();
    }
}

private void setupViewPager() {
    mAdapter = new ViewPagerAdapter(getSupportFragmentManager());
    mAdapter.addFrag(FirstFragment.newInstance(mFeedItem), "INFO");
    //Note: mFeedItem is obtained from the intent and I have verified
    //      that it is properly restored.
    mAdapter.addFrag(SecondFragment.newInstance(mFeedItem), "SERVICES");
    mViewPager.setAdapter(mAdapter);
    mTabLayout.setupWithViewPager(mViewPager);
}
Run Code Online (Sandbox Code Playgroud)

ViewPagerAdapter.java

public class ViewPagerAdapter extends FragmentStatePagerAdapter {
    private final List<Fragment> mFragmentList = new ArrayList<>();
    private final List<String> mFragmentTitleList = new ArrayList<>();

    public ViewPagerAdapter(FragmentManager manager) {
        super(manager);
    }

    @Override
    public …
Run Code Online (Sandbox Code Playgroud)

java performance android android-fragments android-viewpager

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

如何在Android Studio中使用Google Cloud Translation API?

我正在制作一个用于语言翻译的Android应用程序,到目前为止,我已经使用语音识别器意图将语音输入转换为字符串.现在我想将该字符串翻译成另一种语言并使用TTS引擎说出翻译后的文本.我创建了一个单独的translate_test文件供测试使用.我一直在研究并知道Android Studio中需要API密钥.因此,我创建了API密钥并启用了Google Cloud Translation API.现在我正在尝试导入com.google.cloud.translate.Translation我的MainActivity,但是我收到了这个错误:

错误

我需要10个声明点才能让图像显示出来.所以我只能说导入的文件不存在.

我需要有关如何包含云文件的帮助.我一直在网上进行研究,但仍然无法找到有关如何在Android Studio中包含云文件的教程或任何信息.我甚至读过这些文档.我需要帮助,如果有人能给我一些简单的步骤,我会很高兴.

这是我的MainActivity.java文件:

package com.example.aman.translate_test;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

import com.google.cloud.translate.Translation;

public class MainActivity extends AppCompatActivity
{
    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView tv = (TextView) findViewById(R.id.textView);
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的AndroidManifest.xml文件:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.aman.translate_test">

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-library android:name="com.google.cloud.translate.Translate" />

    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="@string/api_key"/>

    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" /> …
Run Code Online (Sandbox Code Playgroud)

java android google-translate android-manifest android-studio

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

无法强制应用程序在iOS9中仅限纵向

我需要我的应用程序才支持纵向方向.但升级到iOS9后,方向设置似乎没有效果.我已经完成了这个答案,这是我的应用程序设置:

方向设置

但仍然应用程序进入景观.我究竟做错了什么?

uiinterfaceorientation ios

3
推荐指数
1
解决办法
1741
查看次数

设置loggly/winston时出错

我按照此处概述的步骤在我的nodejs app中配置loggly:

npm install winston
npm install winston-loggly-bulk
Run Code Online (Sandbox Code Playgroud)

并在index.js中:

var winston = require('winston');
require('winston-loggly-bulk');
winston.add(winston.transports.Loggly, {
token: "8ea17e10-bfce-4f78-bc18-51ab6c61f78c",
subdomain: "qbesdeveloper",
tags: ["Winston-NodeJS"],
json:true
});
Run Code Online (Sandbox Code Playgroud)

但我一直收到这个错误:

Error: Cannot find module 'loggly'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/user/totoapi/node_modules/winston-loggly-bulk/lib/winston-loggly.js:10:14)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/user/totoapi/index.js:10:1)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
Run Code Online (Sandbox Code Playgroud)

node.js winston loggly

3
推荐指数
1
解决办法
614
查看次数

NSURLConnection的奇怪错误代码4294966295

使用时出现异常错误NSURLConnection:

在此输入图像描述

没有日志,也没有什么可以去的.我所能得到的只是错误代码4294966295.知道那可能是什么吗?

我在我的设备上运行XCode7和iOS9.我已经禁用了ATS.

objective-c nsurlconnection ios ios9

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