小编use*_*676的帖子

从库项目注册GCM

我正在尝试从库项目注册到GCM,GCMIntentService是在库项目中定义的.

这是我的注册码(在图书馆项目内):

public static void init(Context context, String id){
    GCMRegistrar.checkDevice(context);
    GCMRegistrar.checkManifest(context);
    GCMRegistrar.register(context, id);
}
Run Code Online (Sandbox Code Playgroud)

但是没有调用GCMIntentService的回调,只有当我将库项目作为独立的android项目运行时才调用它们.

这是我的测试项目清单:

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

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="17" />

    <permission
        android:name="com.example.pushtest.permission.C2D_MESSAGE"
        android:protectionLevel="signature" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.VIBRATE" />

    <!-- GCM requires a Google account. -->
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <uses-permission android:name="com.example.pushtest.permission.C2D_MESSAGE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        android:name=".PushTestApp" >
        <activity
            android:name="com.example.pushtest.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

android push-notification android-service google-cloud-messaging

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

无法在通知中显示更多文本

我试图在标题栏中显示带有长文本的通知.

    PendingIntent contentIntent = PendingIntent.getActivity(context,
            NOTIFICATION_ID, notificationIntent,
            PendingIntent.FLAG_ONE_SHOT);
    NotificationManager nm = (NotificationManager) context
            .getSystemService(Context.NOTIFICATION_SERVICE);
    NotificationCompat.Builder builder = new NotificationCompat.Builder(
            context);
    builder.setContentIntent(contentIntent)
            .setSmallIcon(R.drawable.icon_push).setTicker(alert)
            .setContentTitle(title).setContentText(alert)
            .setWhen(System.currentTimeMillis()).setAutoCancel(true)
            .setDefaults(Notification.DEFAULT_ALL)
            .setSound(Settings.System.DEFAULT_NOTIFICATION_URI);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
        builder.setStyle(new NotificationCompat.BigTextStyle()
                .bigText(title));
    }
    Notification n = builder.build();
    nm.notify(id, n);
Run Code Online (Sandbox Code Playgroud)

但是 builder.setStyle(new NotificationCompat.BigTextStyle() .bigText(title));

setStyle似乎什么都不做,我在Android 4.1测试它

android

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

LocationClient按距离获取位置更新

我正在使用a LocationClient来检索当前用户位置,我正在尝试LocationRequest使用距离值和更新间隔创建一个.

我的代码目前按更新间隔请求位置更新:

        mLocationRequest = LocationRequest.create();
        mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
        mLocationRequest.setInterval(updateInterval);
        mLocationRequest.setFastestInterval(FASTEST_INTERVAL);
        if (mLocationClient.isConnected()) {
            mLocationClient.requestLocationUpdates(mLocationRequest, this);
        }
Run Code Online (Sandbox Code Playgroud)

LocationManager这里有一种按距离请求位置更新的方法

public void requestLocationUpdates (String provider, long minTime, float minDistance, LocationListener listener)

android

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

获取当前用户的唯一ID

如何为正在使用我的应用程序的当前用户获取唯一ID?

我不想检索device UDID(为我的用户隐私问题).

我曾经看过,在最新的API版本(4.0+)中有这样的方法为当前的android用户生成一个唯一的id,但我现在找不到它.

android

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

onTouch事件无法正常工作

我试图扩展相对布局,并添加一个简单的方法来设置onTouchListener.

问题是在我设置监听器之后,唯一被调用的事件是 MotionEvent.ACTION_DOWN

其他事件没有被调用.

这是我的自定义相对布局的代码:

public class MyRelativeLayout extends RelativeLayout {

    public MyRelativeLayout(Context context) {
        super(context);
    }

    public MyRelativeLayout(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public MyRelativeLayout(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    public void setOnTouchEvent() {
        this.setOnTouchListener(new OnTouchListener() {

            @Override
            public boolean onTouch(View v, MotionEvent event) {
                Log.d("myTextView", "onTouch event called");
                switch (event.getAction()) {
                case MotionEvent.ACTION_DOWN:
                    //only this event is being called
                    return false;
                default:
                    //other events are not being called
                    return false;
                } …
Run Code Online (Sandbox Code Playgroud)

android android-layout

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

以编程方式设置listview stackFromBottom

我有一个列表,我想从底部实际更改要填充的项目,而不是从xml.

该属性是否有相应的方法android:stackFromBottom

我想从代码中多次设置它为true或false.

android android-listview

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

如何更改默认的 EditText 文本大小

我正在尝试更改默认EditText样式,我已通过TextView以下方式使用样式完成:

<style name="MyTextViewStyle" parent="android:Widget.TextView">
    <item name="android:textColor">@color/pink</item>
    <item name="android:textSize">@dimen/textSize</item>
</style>
Run Code Online (Sandbox Code Playgroud)

并将其用作 android:textViewStyle 样式

<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
    <item name="android:textViewStyle">@style/MyTextViewStyle</item>
</style>
Run Code Online (Sandbox Code Playgroud)

我怎样才能用一个实现同样的目标EditText

android

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

拔下USB设备时停止服务

我想在拔掉usb时停止正在运行的服务.

在我的活动中,onCreate我检查它的意图action

    if (getIntent().getAction().equals(UsbManager.ACTION_USB_DEVICE_DETACHED)) {
        Log.d(TAG, "************** USB unplugged stopping  service **********");
        Toast.makeText(getBaseContext(), "usb was disconneced", Toast.LENGTH_LONG).show();
        stopService(new Intent(this, myService.class));
    } else {
        init();
    }
Run Code Online (Sandbox Code Playgroud)

在我的内心,我manifest有另一个intent filter

        <intent-filter>
            <action android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" />
        </intent-filter>
Run Code Online (Sandbox Code Playgroud)

而且这intent filter也被称为.

        <intent-filter>
            <category android:name="android.intent.category.DEFAULT" />

            <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
        </intent-filter>
Run Code Online (Sandbox Code Playgroud)

但这个分离并未被召唤.

android

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

设置具有不同大小的textview的文本

我有TextView,我希望文本的每个单词具有不同的大小和字体.

我知道您可以将文本的一部分设置为粗体或使用和标签加下划线.

但是,如果我需要文本的一部分大小为18sp并且具有自定义字体(来自资源)而另一部分具有不同的自定义字体并且大小为14sp.

我可以将TextView拆分为单独的TextViews,但我想避免这种情况.

android textview

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

允许软键盘向上推视图

我有一个编辑文本和编辑文本下面的按钮.

这是片段布局.

我希望键盘按下按钮,以便它始终在屏幕上可见.

这是我的布局:

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

    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="110dp"
        android:ems="10" >

    </EditText>

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/editText1"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="91dp"
        android:text="Button" />

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

android

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

按第一个日期为今天的日期排序

目前我正在尝试按日期排序我的列表:

Collections.sort(unsortedDates, new Comparator<Item>() {
    public int compare(Item m1, Item m2) {
        return m1.getDate().compareTo(m2.getDate());
    }
});
Run Code Online (Sandbox Code Playgroud)

但是我希望对列表进行排序,以便锚定日期为今天,第一个项目应该是当前日期的最近日期.

日期格式是MM/dd.

getDate()返回一个Date对象.

java

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