当API 20中的连接丢失时,我正在使用此代码进行通知.
registerReceiver(getConnectivityStateBroadcastReceiver(), new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
private class ConnectivityStateBroadcastReceiver extends BaseBroadcastReceiver {
/**
* @param userLoggedIn
* @param context
* @param intent
*/
@Override
protected void onReceive(Boolean userLoggedIn, Context context, Intent intent) {
Bundle extras = intent.getExtras();
boolean notConnected = extras.getBoolean(ConnectivityManager.EXTRA_NO_CONNECTIVITY, false);
// DO something
}
}
Run Code Online (Sandbox Code Playgroud)
但它不适用于API 21.
我该如何解决这个问题?也许它与ConnectivityManager.NetworkCallbak有关,但我没有找到任何如何使用它的例子.谢谢.
我正在创建一个SMS应用程序来发送和接收短信.
我可以使用以下代码发送短信:
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(phoneNumber, null,message , pi, null);
Run Code Online (Sandbox Code Playgroud)
我想收到短信并将它们放在我自己的收件箱中.如何创建此收件箱?我希望它的工作方式与普通的收件箱相同.
Bundle bundle = intent.getExtras();
Object[] pdus = (Object[]) bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length];
for (int i = 0; i < messages.length; i++) {
messages[i] = SmsMessage.createFromPdu((byte[])pdus[i]);
Log.v("SMSFun","Body: " + messages[i].getDisplayMessageBody());
Log.v("SMSFun","Address: " + messages[i].getDisplayOriginatingAddress());
//If say we wanted to do something based on who sent it
if (messages[i].getDisplayOriginatingAddress().contains("5556")) {
// we could launch an activity and pass the data
Intent newintent = new Intent(ctx, SecretMessage.class);
newintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
newintent.putExtra("address", …Run Code Online (Sandbox Code Playgroud) 我有一个与Android Wear集成的消息传递应用程序.与环聊类似,在Android Wear智能手表中选择通知时,您可以滑动到显示与所选消息对应的对话的第二张卡.我通过BigTextStyle通知实现它,但我需要知道chars BigTextStyle支持的最大数量,这样我就可以在对话太大而无法完全适应时正确修剪对话.我在文档上找不到这个信息.
经过一些调查,max chars大约是5000,至少在Android Wear模拟器中是这样.因此,我可以这样做:
// scroll to the bottom of the notification card
NotificationCompat.WearableExtender extender = new NotificationCompat.WearableExtender().setStartScrollBottom(true);
// get conversation messages in a big single text
CharSequence text = getConversationText();
// trim text to its last 5000 chars
int start = Math.max(0, text.length() - 5000);
text = text.subSequence(start, text.length());
// set text into the big text style
NotificationCompat.BigTextStyle style = new NotificationCompat.BigTextStyle().bigText(text);
// build notification
Notification notification = new …Run Code Online (Sandbox Code Playgroud) 运行应用程序时出现以下错误:BasicNetwork.performRequest:意外的响应代码401
我需要传递电子邮件,密码和令牌来访问URL,但它无法正常工作
我上周开始学习android,我不太了解
package quest.testvolley;
import com.android.volley.AuthFailureError;
import com.android.volley.VolleyLog;
import com.kpbird.volleytest.R;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.app.Activity;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.Volley;
import org.json.JSONArray;
import org.json.JSONObject;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
public class MainActivity extends Activity {
private String TAG = this.getClass().getSimpleName();
private ListView lstView;
private RequestQueue mRequestQueue;
private ArrayList<NewsModel> arrNews ;
private LayoutInflater …Run Code Online (Sandbox Code Playgroud) 我正在制作一个电子商务应用程序,其购物车列表有一个自定义ListView,其中包含EditText. 代表EditText物品的数量。我用来OnFocusChangeListener检测客户何时完成更改商品数量,然后更新服务器上的购物车。一切工作正常,只是onFocusChange被调用了两次,即我得到了false两次。
viewHolder.etProductQuantity.setOnFocusChangeListener( new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View view, boolean hasFocus) {
if(!hasFocus){
// Updating the ProductList class's object to set the new quantity
// Updating product quantity on server
Log.d("Product Quantity", viewHolder.etProductQuantity.getText().toString() + b);
}
}
});
Run Code Online (Sandbox Code Playgroud)
因此,编码被执行两次,这就产生了问题。
嗨,我正在尝试使用以下代码.内容解析器无法使用此功能.任何人都可以提出一个想法
getContentResolver().registerContentObserver(MyContentProvider.CONTENT_URI,true, new ContentObserver(new Handler()){
@Override public void onChange( boolean selfChange){
showDialog();
}
@Override
public void onChange(boolean selfChange, Uri uri) {
// Handle change.
showDialog();
}
});
Run Code Online (Sandbox Code Playgroud)
提前致谢
我发现一个与Visualizer相关的问题只发生在Android 6.0设备中.真的不知道它为什么会发生,所以任何形式的帮助都会受到赞赏.这是错误堆栈:
AudioEffect: set(): AudioFlinger could not create effect, status: -1
visualizers-JNI: Visualizer initCheck failed -3
Visualizer-JAVA: Error code -3 when initializing Visualizer.
java.lang.RuntimeException: Cannot initialize Visualizer engine, error: -3
System.err: at android.media.audiofx.Visualizer.<init>(Visualizer.java:218)
System.err: at com.xxx.xxxx.customviews.visualizer.VisualizerView.link(VisualizerView.java:101)
Run Code Online (Sandbox Code Playgroud)
以下是导致它的代码:
public void link(MediaPlayer player) {
if (player == null) {
throw new NullPointerException("Cannot link to null MediaPlayer");
}
Equalizer mEqualizer = new Equalizer(0, player.getAudioSessionId());
mEqualizer.setEnabled(true); // need to enable equalizer
try {
int aud = player.getAudioSessionId();
**mVisualizer = new Visualizer(aud);**
mVisualizer.setEnabled(false);
mVisualizer.setCaptureSize(Visualizer.getCaptureSizeRange()[1]);
Visualizer.OnDataCaptureListener …Run Code Online (Sandbox Code Playgroud) <item value="245">Guinea-Bissau [245]</item >
<item value="592">Guyana [592]</item >
<item value="509">Haiti [509]</item >
<item value="504">Honduras [504]</item >
<item value="91">India [91]</item >
<item value="62">Indonesia [62]</item >
Run Code Online (Sandbox Code Playgroud)
我正在使用这个
country.setOnItemSelectedListener(new OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
//selectioncountry = parent.getItemAtPosition(position).toString();
selectionarea = parent.getItemIdAtPosition(position);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
Run Code Online (Sandbox Code Playgroud)
这个代码给印度的价值是4但我需要91我怎么能这样做???
我有一个具有类型对象的活动mqttQndroidClient.这个对象我想将它传递给另一个活动.为了达到这个目的,我读到了如何解决这个问题,我找到的解决方法是创建一个serializable如下所示实现的类,我做了以下事情:
client = new mqttAndroidClient(..,...,..,..,);
Intent i = new Intent(act_1.this, act_2.class)
clientObject = clientObj = new (CLIENT_OBJ_KEY, client);
Bundle b = new Bundle();
b.putSerializable(CLIENT_OBJ_KEY, clientOb.getObjValue());
Run Code Online (Sandbox Code Playgroud)
但是eclipse b.putSerializable(CLIENT_OBJ_KEY, clientObjValue());用红色突出显示,似乎我没有serializable正确地创造一个物体.
和clientObject实现的类,serializable如下所示:
public class ClientObject implements Serializable {
private String objectKey;
private MqttAndroidClient objectValue;
public ClientObject(String objectKey, MqttAndroidClient objectValue) {
this.objectKey = objectKey;
this.objectValue = objectValue;
}
public void setObjKey(String objectKey) {
this.objectKey = objectKey;
}
public String getObjKey() {
return this.objectKey; …Run Code Online (Sandbox Code Playgroud)