小编Tad*_*ust的帖子

加速multidex应用程序中的gradle构建

我的应用程序有一堆必不可少的库,这就是为什么我被迫使用multidex支持库并且它运行良好.但问题显示的是在gradle buid速度.平均需要2分钟才能构建,当我开发和测试时,这非常烦人.

有没有办法加快我的调试版本?

performance android android-studio android-gradle-plugin android-multidex

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

Android支持multidex库实现

我已达到魔法dex限制,因为我的应用程序使用了大量的jar(驱动器api,greendao,文本到pdf,支持..).

我目前的解决方案是,我真的创建了第二个apk,仅用于谷歌驱动器,我从主apk调用.但现在我发现android最终支持这个库.我的问题只是我不知道如何实现它(最好没有gradle).我找不到任何好的教程.

Okey我正在试图实现这个...我发现了这个:http: //blog.osom.info/2014/10/multi-dex-to-rescue-from-infamous-65536.html

我补充说:

 android:name="android.support.multidex.MultiDexApplication"
Run Code Online (Sandbox Code Playgroud)

到我的清单文件和

protected void attachBaseContext(Context base) {
     super.attachBaseContext(base);
     MultiDex.install(this);
}
Run Code Online (Sandbox Code Playgroud)

到我的mainactivity.java

还为eclipse安装了gradle插件,导出gradle以获取build.gradle文件,我改为:

apply plugin: 'android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':android-support-v7-appcompat')
    compile project(':Sync')
    compile project(':gdrive:google-play-services_lib')
}


android {
    compileSdkVersion 14
    buildToolsVersion "21.1.1"


    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src-gen','src']
            resources.srcDirs = ['src-gen','src']
            aidl.srcDirs = ['src-gen','src']
            renderscript.srcDirs = ['src-gen','src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        // Move the tests to tests/java, tests/res, etc...
        instrumentTest.setRoot('tests')

        // Move the build …
Run Code Online (Sandbox Code Playgroud)

android dex android-library android-gradle-plugin

13
推荐指数
2
解决办法
4万
查看次数

应用备用桶不确认用户交互

我有一个 VOIP 应用程序,每次执行呼叫时都会使用高优先级推送通知。推送通知是消息通知,因为我想自己处理交互。当我收到推送时,我会启动一个前台服务,该服务开始侦听 SIP 通信,然后打开用户与之交互的自定义​​呼叫屏幕(活动)。对于 android PI ACTION_MANAGE_OVERLAY_PERMISSION,即使从服务中我也可以始终打开呼叫屏幕。

我相信会发生的是备用存储桶没有检测到用户与此流的交互,因为我的高优先级消息受到限制。从 FCM 诊断中,我可以看到推送通知传到手机,但没有广播到应用程序本身。

将手机置于此状态时,我也可以毫无问题地复制此内容:

./adb shell dumpsys battery unplug                           
./adb shell am set-inactive package.name.com true
./adb shell dumpsys deviceidle force-idle 
Run Code Online (Sandbox Code Playgroud)

我如何确保打开的活动算作用户交互,或者如果这不可能,如何更改流程以使其工作但仍打开自定义呼叫屏幕活动?

android android-powermanager firebase-cloud-messaging

10
推荐指数
0
解决办法
110
查看次数

jquery ajax 发布调用,ajaxify 历史记录和后退按钮

我在 jquery 函数中进行了 ajax 调用,我使用放在 div 上的 onClick 选项进行调用。例子:

<div class='basic' onClick='example( <?php echo numberIwant ?> )'> example </div>
Run Code Online (Sandbox Code Playgroud)

功能看起来像这样:

function example(ID){
    $.ajax({
        type: "POST",
        url: "example.php",
        data: "ID="+ID, success: function(msg){$("#main").html(msg);}
    });
}
Run Code Online (Sandbox Code Playgroud)

现在我想让浏览器的后退按钮工作,打开上一页(ajax 内容)。我用谷歌搜索并尝试了多个脚本,如 ajaxify 和 history.js 等,但我无法让它工作。

我不知道我是否不知道如何正确使用 ajaxify 或者它是否只是不适合这种方法..

谁能帮我?

javascript ajax jquery history.js ajaxify

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

如果连接丢失,Android将重新连接到蓝牙设备

我的手机正在连接蓝牙设备,工作正常.它连接并且连接成立.我可以更改方向,在后台安装我的应用程序,我可以关闭应用程序,当我将其重新打开时,它将自动连接.但是从应用程序用户那里我得到一些报告说连接在一段时间后丢失(没有检测到模式).我试图重新创建这个,但没有运气.因此,为了避免此问题,我想在连接丢失时实现自动重新连接到之前选择的设备.

我做了一些研究,可以通过实现一个可以检测到的广播接收器来完成: android.bluetooth.device.action.ACL_DISCONNECTED

我的问题是:

  • 我已经有一个在设备启动时触发的广播接收器.我是否应该扩展此接收器以添加ACL_DISCONNECTED或添加单独的接收器?
  • 我的BluetoothService初始化我的mainactivity,但我需要重新连接intent.怎么做.

感谢您的回答.

蓝牙服务代码:

public class BluetoothService
{
    // Debugging
    private static final String TAG = "BluetoothService";    
    private static final UUID MY_UUID = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");

// Member fields
private final BluetoothAdapter mAdapter;
private final Handler mHandler;
private final Context mContext;
private ConnectThread mConnectThread;
private ConnectedThread mConnectedThread;    
private int mState;

// Constants that indicate the current connection state
public static final int STATE_NONE = 0;       // we're doing nothing
public static final int STATE_CONNECTING = 1; // now …
Run Code Online (Sandbox Code Playgroud)

java android bluetooth android-broadcast android-bluetooth

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

当 wifi 不可用但蜂窝数据在三星设备上时,ContentResolver requestSync 不会触发 SyncAdapter onPerformSync

问题如下。我有一个有效的 SyncAdapter 和 ContentResolver 设置。onPerformSync当我打开 wifi 但 wifi 没有互联网连接(它连接到 IOT 设备)时,不会触发SyncAdapters 的问题。我有一张 SIM 卡,可以使用蜂窝数据。在应用程序中,我设置了 NetworkManager,因此我请求蜂窝数据,如下所示:

val req = NetworkRequest.Builder()
req.addTransportType(NetworkCapabilities.TRANSPORT_CELLULAR)
req.addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
Run Code Online (Sandbox Code Playgroud)

如果我创建一个 API 请求而不是触发ContentResolver.requestSync它正常工作。

此代码在华为平板电脑上也能正常工作,但不能在三星上正常工作。

所以基本上。我有蜂窝网络,但 SyncAdapter 没有意识到这一点(在三星设备上)并且不会触发onPerformSync. 无论如何要让 SyncAdapter 意识到这一点?

android android-contentresolver android-syncadapter kotlin networkmanager

6
推荐指数
0
解决办法
53
查看次数

如何在 Node.js 中使用 Rust 代码,以便 Rust 函数接受 JavaScript 函数作为回调?

在 Rust 中它看起来像这样;handler将来自 JavaScript:

let url = "127.0.0.1:4445"; // JavaScript url
let address = SocketAddr::from_str(url).await.unwrap();
let listener = Listener::bind(&address).await.unwrap();
let mut result = false;
while let Some(stream) = listener.incoming().next().await {
    handler(conn); // JavaScript handler
}
Run Code Online (Sandbox Code Playgroud)

我计划在 Node.js 中使用 FFI 进行集成,但我不确定如何使用 JavaScript 函数作为 Rust 的回调。

javascript callback ffi node.js rust

5
推荐指数
0
解决办法
58
查看次数

事件参数有哪些限制?

事件中可以发送的参数数量是否有限制?

我有一个函数,我想在其中触发具有 12 个参数的事件,其中 6 个参数是数组。我的堆栈太深了,尝试使用更少的变量。如果没有该事件,该功能将正常工作。

我猜测事件参数有一些限制或计入 Solidity 函数中的最大参数,但我找不到有关它的任何文档。

谁能澄清这一点吗?

编辑:

合同看起来像这样:我使用安全数学,并且 _getAddressSubArrayTo 是一个内部纯函数,它从索引到索引获取子数组。

event LogTemp(address a,
             address b,
             address[] c,
             uint256[] d,
             address[] e,
             uint256[] f,
             address[] g,
             uint256[] h,
             uint256 i,
             uint256 j,
             uint256 k,
             bytes32 l);

function test(address[] _addresses,
           uint256[] _uints,
           uint8 _v,
           bytes32 _r,
           bytes32 _s,
           bool test)
  public
  returns (bool)
{

Temp memory temp = Temp({
  a: _addresses[0],
  b: _addresses[1],
  c: _getAddressSubArrayTo(_addresses, 2, _uints[3].add(2)),
  d: _getUintSubArrayTo(_uints, 5, _uints[3].add(5)),
  e: _getAddressSubArrayTo(_addresses, _uints[3].add(2), (_uints[3].add(2)).add(_uints[4])),
  f: _getUintSubArrayTo(_uints, _uints[3].add(5), …
Run Code Online (Sandbox Code Playgroud)

arguments ethereum solidity

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

创建admob native advance ad id

我在Android应用程序中实现了预先原生广告.

现在,我希望将它们带到现场,但无法让它们与我的原生应用程序单元ID一起使用.我猜这是因为它只能用于快递广告.

如何获得预付广告单元ID?

android admob native-ads

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

电子签名 PDF Android

我需要制作一个应用程序,您可以在其中打开 PDF 文档,将其显示给客户,然后他将以电子方式对其进行签名(在平板电脑上写下他的签名)。

据我了解,您需要正在创建的签名中的数据(时间戳、压力和绘图时间)并将其附加到 PDF。

但这就足够了吗?因此,要打开画布,读取数据并将其与签名图像本身附加到 PDF,还是我还需要对 PDF 进行数字签名?如果这就足够了,那么在哪里附加所有附加数据(时间戳...)?- 我计划使用 itext 库。

pdf android electronic-signature itext

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