小编los*_*aby的帖子

如何从静态上下文中获取资源内容?

我想xml在我做很多其他事情之前从文件中读取字符串,比如setText在窗口小部件上做什么,所以如果没有要调用的活动对象,我怎么能这样做getResources()呢?

java static android const android-resources

160
推荐指数
5
解决办法
12万
查看次数

为什么我的比较方法抛出异常 - 比较方法违反了它的一般合同!

为什么这个代码

public class SponsoredComparator implements Comparator<SRE> {

    public boolean equals(SRE arg0, SRE arg1){
        return arg0.getSponsored()==arg1.getSponsored();
    }

    public int compare(SRE object1, SRE object2) {
        Log.d("SponsoredComparator","object1.getName() == "+ object1.getName());
        Log.d("SponsoredComparator","object1.getSponsored() == "+ object1.getSponsored());
        Log.d("SponsoredComparator","object2.getName() == "+ object2.getName());
        Log.d("SponsoredComparator","object2.getSponsored() == "+ object2.getSponsored());
        Log.d("SponsoredComparator","compare return == "+ (object1.getSponsored() && object2.getSponsored() ? 0 : object1.getSponsored() ? -1 : 1));
        return object1.getSponsored() && object2.getSponsored() ? 0 : object1.getSponsored() ? -1 : 1;
    }
}
Run Code Online (Sandbox Code Playgroud)

抛出此异常: ERROR/AndroidRuntime(244): java.lang.IllegalArgumentException: Comparison method violates its general contract!
ERROR/AndroidRuntime(4446): at java.util.TimSort.mergeLo(TimSort.java:743) …

java android contract comparator

14
推荐指数
3
解决办法
3万
查看次数

如何使用 sdk 中的 flutter_test 和包测试?什么版本的测试使用 test_api 0.4.3?

我正在尝试为我的 flutter 应用程序运行一些基本的单元测试。但是当我运行 pub get 时,在我的 pubspec 中包含test: 1.20.0后出现以下错误:

dev_dependencies:
  dependency_validator: ^3.1.0 # run flutter pub run dependency_validator
  #integration_test:
  #  sdk: flutter
  flutter_test:
    sdk: flutter
  test: ^1.20.0 
Run Code Online (Sandbox Code Playgroud)

所以当我跑步时f pub get我看到:

    Because test >=1.20.0 depends on test_api 0.4.9 and every version of flutter_test from sdk depends on test_api 0.4.3, test >=1.20.0 is incompatible with flutter_test from sdk.
    So, because myapp depends on both flutter_test from sdk and test ^1.20.0, version solving failed.
    pub get failed (1; So, …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-test

11
推荐指数
2
解决办法
9888
查看次数

当远程用户名与本地不同时,如何提交svn?

我正在使用svn_ssh在另一台机器上使用svn服务器进行开发虽然我能够进行初始签入和检出我无法从命令行执行提交,因为系统尝试使用我的本地用户名jondoe(并提示连接到用户名为johnd的远程服务器时.

那么,我如何告诉svn + ssh使用johnd进行提交?

svn ssh commit username

9
推荐指数
2
解决办法
3万
查看次数

如何在php脚本完成之前导致重定向?

我想运行一个PHP脚本,它会发送一堆电子邮件(新闻通讯),但由于它可能需要一段时间才能运行,我希望用户立即被重定向到一个页面,其中包含"您的新闻通讯排队等待的消息"送出."
到目前为止,标头重定向工作,但直到所有电子邮件发送后才会导致重定向.我可以在发送重定向后关闭连接,以便浏览器立即对重定向进行操作吗?我试过这样的东西


ob_start();
ignore_user_abort(true);
header( "refresh:1;url=waitforit.php?msg=Newsletters queued up, will send soon.");
header("Connection: close");
header("Content-Length: " . mb_strlen($resp));
echo $resp;
//@ob_end_clean();
ob_end_flush();
flush();

以各种排列和组合但无济于事.我怀疑它不能这么简单,但在我开始搞乱cron作业或自定义守护进程之前,我想我会考虑这种方法.谢谢

例如下面的块头建议,但没有运气

ob_start();
ignore_user_abort(true);
header( "refresh:1;url=mailing_done.php?msg=Newsletters queued for sending.");
header("Connection: close");
header("Content-Length: 0" );
//echo $resp;
ob_end_flush();
flush(); 
Run Code Online (Sandbox Code Playgroud)

php redirect header

9
推荐指数
2
解决办法
4578
查看次数

如果我在不同的布局中为几个小部件使用相同的ID,会发生什么?

目前我小心翼翼地为每个小部件使用不同的ID,但是如果我对不同布局xml文件中的某些小部件使用相同的id,那么我对findViewById的调用会怎样?是否会混淆并从错误的布局文件返回一个小部件?

我问,因为我想在其他一些视图中包含一个视图(带有一行按钮),然后每个屏幕类都必须为包含的视图上的每个按钮指定一个稍微不同的行为.但要做到这一点,他们会在相同的id上调用findViewById.例如,目前我在每个文件中都喜欢这样:

final ImageButton homeButton = (ImageButton)this.findViewById(R.id.rshome_button);
homeButton.setOnClickListener(new BottomButtonClickListener());

final ImageButton hotButton = (ImageButton)this.findViewById(R.id.rshotlist_button);
hotButton.setOnClickListener(new BottomButtonClickListener());

final ImageButton locButton = (ImageButton)this.findViewById(R.id.rsbot_map);
locButton.setOnClickListener(new BottomButtonClickListener());

final ImageButton sendButton = (ImageButton)this.findViewById(R.id.rssend_button);
sendButton.setOnClickListener(new BottomButtonClickListener());
Run Code Online (Sandbox Code Playgroud)

但是我将每个文件中的R.id更改为指向每个关联布局中的窗口小部件.如果我可以使用一个R.id,那将是很好的,所以我不必调整每个布局文件和每个屏幕类.

谢谢

layout android

6
推荐指数
2
解决办法
6103
查看次数

如何为子画面设置动画以使其移动到颤动中的任意点?

我试图学习在Flutter中使用具有Stack和PositionedTransitions的动画,并为此制作了一个基于精灵的简单游戏。目前,我的精灵显示在动画的结束位置,而不是开始处,然后滑动到结束位置。
我的代码如下所示:

if (lamb != null) {
  beginTop = ((lamb.lastY - 1) * roomLength) + lamb.lastY;
  beginLeft = ((lamb.lastX - 1) * roomLength) + lamb.lastX;
  endTop = ((lamb.y - 1) * roomLength) + lamb.y;
  endLeft = ((lamb.x - 1) * roomLength) + lamb.x;
  layerAnimation = RelativeRectTween(
    begin: RelativeRect.fromLTRB(beginLeft, beginTop, 0.0, 0.0),
    end: RelativeRect.fromLTRB(endLeft, endTop, 0.0, 0.0),
  ).animate(_controller.view);
  return PositionedTransition(
    rect: layerAnimation,
    child: Text(
      lamb.emoji,
      style: TextStyle(color: Colors.black, fontSize: roomLength - 12),
    ),
  );
}
Run Code Online (Sandbox Code Playgroud)

我应该在_controller.forward()某个地方打个电话吗?何时何地?屏幕上最多有10个动画小部件同时使用同一_controller,所有小部件必须同时滑动。

谢谢

PS:以下代码,而不是PositionedTransition内容,似乎朝着正确的方向发展:

 return …
Run Code Online (Sandbox Code Playgroud)

animation flutter flutter-positioned

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

为什么Android的PhoneGap应用程序出现此错误?

在模拟器中运行时(使用Phonegap 1.1.0,Mac 10.6,Eclipse 3.7.1),我收到此错误:

12-01 11:49:12.936: D/chromium(1062): Unknown chromium error: -6
...
12-01 11:49:13.476: I/System.out(1062): onReceivedError: Error code=-1 Description=A network error occurred. URL=file://android_asset/www/index.html
Run Code Online (Sandbox Code Playgroud)

在设备上我收到此错误:

12-01 11:50:37.644: I/System.out(5319): onReceivedError: Error code=-14 Description= 
The  requested file was not found. /android_asset/www/index.html (No such file or directory)       URL=file://android_asset/www/index.html
Run Code Online (Sandbox Code Playgroud)

我的应用程序只是一个简单的演示类型应用程序,到目前为止唯一的代码是index.html文件中的这个javascript

function onBodyLoad()
{          
    document.addEventListener("deviceready",onDeviceReady,false);
}

function onDeviceReady()
{    
    document.addEventListener("resume", onResume, false);
    onResume();     
}

function onResume(){
    openBrowser('http://www.mysite.com/wap');  
    //navigator.app.exitApp();
}

function openBrowser(url){
      // document.location= url;
}
Run Code Online (Sandbox Code Playgroud)

我正在查看有关类似错误的其他帖子,他们似乎都建议像这样设置java:

  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    super.setStringProperty("loadingDialog", "Title,Message"); 
    this.setIntegerProperty("loadUrlTimeoutValue", 70000); …
Run Code Online (Sandbox Code Playgroud)

eclipse android cordova

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

如何:通过http连接以编程方式下载和打开pdf文件

如何:下载(通过http连接)并以编程方式打开或保存pdf文件.

假设我的屏幕上有一个按钮和pdf的URL,当单击按钮时我想从URL下载pdf并让用户选择打开或保存文件.如果我打开浏览器到网址,或者我可以从我的应用程序执行此操作,必须有一种标准的方法来做一些如此平常的事情吗?

pdf file-io android download

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

在我的android firebase应用程序中安装Fabric Crashlytics后,这个Gradle构建错误是什么?

我尝试手动添加Fabric Crashlytics,然后尝试使用插件,但在尝试构建时遇到了同样的错误:

Error:Execution failed for task ':app:processReleaseManifest'.
> Manifest merger failed : Attribute meta-data#io.fabric.ApiKey@value value=( my api key ) from AndroidManifest.xml:39:13-69
    is also present at [com.firebaseui:firebase-ui-auth:1.2.0] AndroidManifest.xml:20:13-60 value=(@string/twitter_consumer_secret).
    Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:37:9-39:72 to override.
Run Code Online (Sandbox Code Playgroud)

我添加了建议的行(即使我不是真的了解它或知道它是否会导致与firebase-ui-auth的某种冲突)

tools:replace="android:value"
Run Code Online (Sandbox Code Playgroud)

现在我可以构建并运行应用程序,但是当我强行崩溃时:

throw new RuntimeException("This is a crash");
Run Code Online (Sandbox Code Playgroud)

我得到了崩溃报告,虽然他们需要一段时间才能出现.

我的gradle文件看起来像这样:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
}




// …
Run Code Online (Sandbox Code Playgroud)

android firebase crashlytics firebase-authentication

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

如何:使用gapi从谷歌分析中定义和获取自定义报告

我在Google分析中有一个名为my-newsletters的自定义报告.我想通过php调用来获取此报告,$ga->requestReportData(...)然后解析响应并对其进行格式化.

首先,我创建了一个帐户来收集所有我的简报打开和点击点击 - 每当有人打开简报或点击时事通讯中的链接时,我会通过调用Google上的__utm.gif来捕获该时事通讯.部分工作,我包括在呼叫(在着陆页又名utmp的参数)的一些数据,如单词"开放"和"点击"来区分的事件,我希望以后解析出也有一些其他的数据,再加上我使用广告系列字段,也许我应该对源字段做一些事情 - 现在我只是重复utmp字段.到目前为止,这部分似乎有效.

现在,我需要帮助来定义一个报告,该报告将返回utmp和广告系列字段信息以及每个点击次数,按照我猜的点击日期排序.然后我需要从我的PHP调用该报告,然后解析它 - 解析部分我不担心.

PS:这是我用来生成utm url的代码

function getGoogleUtmUrl($source='Emails', $referer='opens', $estid='0',$mailid='0', $campaign){
  $stat_id='MO-xxx31982-1';
    $var_utmcs=urlencode( 'UTF-8');
    $var_utmac = $stat_id; 
    $var_utmhn = 'mysite.com'; //enter your domain
    $var_utmn = rand(1000000000,9999999999); //random request number
    $var_cookie = rand(10000000,99999999); //random cookie number
    $var_random = rand(1000000000,2147483647); //number under 2147483647
    $var_today = time(); //today
    $var_referer = $referer; //referer url
    $utm_source = 'my_newsletter';
    $utm_medium = 'Emails';
    $utm_campaign = $campaign;//$_GET['url'];
    $var_uservar = $estid.'_'.$mailid; //enter your own user defined variable
    $var_utmp = 'mysite.com/newsletters/'.$referer.'/'.$estid.'/'.$mailid;//.$estid;//$_GET['url']; //this example …
Run Code Online (Sandbox Code Playgroud)

php google-analytics google-analytics-api

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