小编fai*_*zal的帖子

安装MySQL JDBC驱动程序msi

我从http://dev.mysql.com/downloads/connector/j/下载了MySQL的"mysql-connector-java-gpl-5.1.26.msi"的JDBC驱动程序.但我无法弄清楚如何使用它.http://dev.mysql.com/doc/refman/5.6/en/connector-j-binary-installation.html上的文档说它是一个包含所需jar文件的zip文件.但我得到的是一个.msi文件.当我执行msi文件时,它只是开始安装并消失.任何想法我如何从msi获取jar文件?

mysql jdbc

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

广播接收机的呼叫活动方法

在主活动中,加载了一个包含一些输入字段和一个提交按钮的布局.单击提交按钮时,onClick处理程序方法会将短信发送回同一个手机号码:

SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(number, null, "hi", null, null);
Run Code Online (Sandbox Code Playgroud)

定义的广播接收器拦截消息:

public class SmsReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {
    Bundle pdusBundle = intent.getExtras();
    Object[] pdus=(Object[])pdusBundle.get("pdus");
    SmsMessage messages=SmsMessage.createFromPdu((byte[]) pdus[0]);
    if(messages.getMessageBody().contains("hi")){
        abortBroadcast();
    }

}
}
Run Code Online (Sandbox Code Playgroud)

现在,从广播接收器,我想调用一个函数(带参数),这是我的主要活动.那可能吗?如果是,我应该在广播接收器中添加什么样的代码?

android

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

@SuppressLint有什么用("InlinedApi")

@SuppressLint("InlinedApi")在一些代码中遇到过我无法在网上找到它的任何描述.我理解@SuppressLint("NewApi")用于在编写高于清单中提到的minsdk的代码时隐藏警告.但我无法弄清楚何时应该使用"InlinedApi".有任何想法吗?

android

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

是内部使用内容提供者所需的android:exported ="true"

我在应用程序清单中定义了一个提供程序:

<provider
    android:authorities="com.example.myapp.provider"
    android:name="com.example.myapp.MyProvider">
</provider>
Run Code Online (Sandbox Code Playgroud)

只需要在应用程序中使用提供程序.但是当我尝试运行我的活动时,我收到以下错误:

Failed to find provider info..
Run Code Online (Sandbox Code Playgroud)

但是如果我只是在清单中设置提供程序的export属性,它就可以正常工作:

android:exported="true" 
Run Code Online (Sandbox Code Playgroud)

所以我的问题是为什么需要这个?因为,根据文档(http://developer.android.com/guide/topics/manifest/provider-element.html#exported),仅当提供程序可用于其他应用程序时才需要导出.难道我做错了什么?

[编辑]:令人惊讶的是,即使在删除导出的属性后,错误也已消失,而不进行任何其他更改.我不知道为什么它现在正在运作.可能是我身边的一些愚蠢的错误.我把这个问题保持开放,希望得到关于什么一定出错的线索.

[编辑]:这次我用接收器再次面对这个问题.所以这不是我身边的错误,正如我在之前的编辑中所假设的那样.我怀疑ADT构建工具有问题.

android android-contentprovider

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

带有Theme.AppCompat的黑暗动作栏

我正在使用Theme.AppCompat我的应用程序来获得黑暗的外观.一切看起来都不错,除了使用这个主题的动作栏看起来很古老,即它有一个明亮的蓝色底部分隔线.

我希望操作栏看起来像它Theme.AppCompat.Light.DarkActionBar.

看一下themes.xml,我发现:

<style name="Theme.AppCompat.Light.DarkActionBar"
       parent="Theme.Base.AppCompat.Light.DarkActionBar">
    <item name="windowActionBar">true</item>
</style>


<style name="Theme.Base.AppCompat.Light.DarkActionBar" parent="Theme.Base.AppCompat.Light">
    <item name="actionBarDivider">@drawable/appcompat_divider_dark</item>
</style>
Run Code Online (Sandbox Code Playgroud)

所以我创建自己的风格如下:

<style name="myTheme" parent="@style/Theme.AppCompat">
    <item name="actionBarDivider">@drawable/appcompat_divider_dark</item>
</style>
Run Code Online (Sandbox Code Playgroud)

但是我得到了构建错误:

No resource found that matches the given name (at 'actionBarDivider' with value 
 '@drawable/appcompat_divider_dark')
Run Code Online (Sandbox Code Playgroud)

为什么我不能使用框架使用的相同drawable?

android android-source android-theme

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

android-support-v4.jar依赖错误

我刚刚minsdk在最新的Eclipse Luna.Eclipse中创建了一个新的空白Android项目,并在项目android-support--v4.jar的libs文件夹中自动添加了一个.这导致控制台出错:

Found 2 versions of android-support-v4.jar in the dependency list,
but not all the versions are identical (check is based on SHA-1 only at this time).
All versions of the libraries must be the same at this time.
Versions found are:
Path: /home/faizal/DEV/ADT workspace/myNewProject/libs/android-support-v4.jar
    Length: 758727
    SHA-1: efec67655f6db90757faa37201efcee2a9ec3507
Path: /home/faizal/DEV/ADT workspace/appcompat_v7/libs/android-support-v4.jar
    Length: 648327
    SHA-1: ded9acc6a9792b8f1afc470f0c9cd36d178914cd
Jar mismatch! Fix your dependencies
Run Code Online (Sandbox Code Playgroud)

这是因为我还有一个appcompat_v7支持库项目,我将其用于另一个项目,并由较旧的Eclipse创建(我认为它是Juno ..它是ADT包的一部分).

我知道解决方案是删除其中一个罐子,但是哪个和为什么?

eclipse android android-support-library

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

rebase来压缩同一分支上的多个提交

我们可以使用rebase将多个提交压缩到同一个分支上的一个提交中吗?

举个例子,我创建了两个主题分支 - 来自master的issueA_1和issueA_2.我在两个分支中进行了几次提交,如图中所示(为了简洁,我在这里使用提交名称而不是提交哈希):

           -->  (issueA_1) - commitX1
          /
(master)--
          \
           -->  (issueA_2)
                   |
                commitY1
                   |
                commitY2
Run Code Online (Sandbox Code Playgroud)

然后我做:

git checkout issueA_2
git rebase -i issueA_1
Run Code Online (Sandbox Code Playgroud)

我将rebase文件更改为:

pick commitY1
fixup commitY2
Run Code Online (Sandbox Code Playgroud)

在此rebase之后,提交历史记录如下所示:

           -->  (issueA_1) - commitX1
          /
(master)--
          \
           -->  (issueA_2)
                   |
                commitX1
                   |
                commitY1
                   |
                commitY2
Run Code Online (Sandbox Code Playgroud)

我不再需要分支问题A_1,所以我这样做:

git branch -D issueA_1
Run Code Online (Sandbox Code Playgroud)

issueA_2的提交历史还不足以合并到master中.我希望在合并到master之前将此分支的commitX1,commitY1和commitY2压缩为1个单一提交.这可能吗?

git

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

如何设计DAO更新方法

如何为具有多个字段的实体设计DAO类?

例如,对于以下实体:

public class MyEntity{

    private long id;
    private int field1;
    private String field2;
    private Date field3;
    private Date field4;
    private int field5;

}
Run Code Online (Sandbox Code Playgroud)

我应该创建一个DAO类,其中包含每个字段的更新方法,如:

public class MyEntityDao{
    public insert(MyEntity myEntity);
    public delete(MyEntity myEntity);    
    public get(long id);
    public updateField1(MyEntity myEntity)
    public updateField2(MyEntity myEntity)
    public updateField3(MyEntity myEntity)
    public updateField4(MyEntity myEntity)
    public updateField5(MyEntity myEntity)

}
Run Code Online (Sandbox Code Playgroud)

这似乎是合乎逻辑的事情,但我通常只看到一个update()方法的例子.在这种情况下,DAO应该如何确定在数据库中更新哪个字段?它是否只是盲目地更新所有字段,即使只有1个可能已经改变了?或者实体类是否应将标志作为成员来指示哪些字段已更改?

java dao

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

相对布局中的无效布局参数:layout_weight

在 Eclipse 编辑器中,我的 android 布局文件出现以下错误:

Invalid layout param in a RelativeLayout: layout_weight
Run Code Online (Sandbox Code Playgroud)

布局 :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <EditText
        android:id="@+id/text_input"    
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        android:layout_weight="0.7"
        />

    <EditText
        android:id="@+id/text_input1"
        android:layout_width="20dp"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        android:layout_toRightOf="@id/text_input"
        />

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

我的 layout_weight 有什么问题?

android android-layout-weight

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

如何在视图层次结构中消费点击事件

有没有办法使用视图上的单击事件,以便它不会传播到视图层次结构中的任何其他视图?

例如,我有一个看起来像这样的视图层次结构:

List View -> LinearLayout(List view item) -> TableRow -> Space
Run Code Online (Sandbox Code Playgroud)

我想使用 Space 小部件上的单击事件,以便它不会传播到列表视图项。

android

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