我想知道如何检测我自己的服务是否已启用.所以我可以检查我的服务是否未启用,然后告诉用户启用它.
好吧,我正在尝试添加锁定方向按钮,但是当我打电话时
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT);
Run Code Online (Sandbox Code Playgroud)
屏幕变为普通人像.我究竟做错了什么?
public void onSensorChanged(SensorEvent event) {
x = event.values[0];
y = event.values[1];
z = event.values[2];
orientation.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
if (x > 5){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
} else if (x < -5){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_LANDSCAPE);
} else if (y > 5){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
} else if (y < -5){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_REVERSE_PORTRAIT);
}
}
});
}
Run Code Online (Sandbox Code Playgroud) 示例:单击按钮上载图像时,将出现选择文件的对话框.然后,您可以选择要选择的应用程序.如何让我的应用程序出现在该对话框中?

我知道如何更改手机铃声,以及如何获取联系人,但如何为特定联系人设置铃声?
那么,如何使用方法:ContactsContract.Contacts.CUSTOM_RINGTONE?
我试过这样的:
Uri contactUri = ContactsContract.Contacts.CONTENT_URI;
String[] PROJECTION = new String[] {
ContactsContract.Contacts._ID,
ContactsContract.Contacts.DISPLAY_NAME,
ContactsContract.Contacts.HAS_PHONE_NUMBER,
};
String SELECTION = ContactsContract.Contacts.HAS_PHONE_NUMBER + "='1'";
Cursor contacts = managedQuery(contactUri, PROJECTION, SELECTION, null, null );
while (contacts.moveToNext())
{
String Name=contacts.getString(contacts.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
}
String str1 = contacts.getString(contacts.getColumnIndexOrThrow("_id"));
Uri localUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_URI, str1);
ContentValues localContentValues = new ContentValues();
localContentValues.put(ContactsContract.Contacts.CUSTOM_RINGTONE,
f.getAbsolutePath()+"/Adveture.ogg");
MainActivity.this.getContentResolver().update(localUri, localContentValues, null, null);
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
好吧,我有一个通知运行的服务,我想在用户点击通知时MainActivity打开额外的新意图,所以当打开时我可以得到额外的.我尝试过不同的方法,但我只是找不到如何让它发挥作用.
这是我尝试过的:
这是MyService
Intent intent = new Intent(MyService.this, MainActivity.class);
intent.putExtra("EXTRA", StringTEST);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent contentIntent = PendingIntent
.getActivity(getApplicationContext(),
0, intent, 0);
Run Code Online (Sandbox Code Playgroud)
这打开活动很好,但我不能得到额外的?这就是我试图得到它的方式:
主要活动
@Override
public void onNewIntent(Intent intent){
Bundle extras = intent.getExtras();
if(extras != null){
String name = extras.getString("EXTRA");
System.out.println(name);
}
}
@Override
protected void onResume() {
Bundle extras = getIntent().getExtras();
System.out.println(extras+"");
if (extras != null) {
try {
onNewIntent(getIntent());
Intent i = getIntent();
String name = i.getStringExtra("EXTRA");
System.out.println(name);
currentDir = new File(name);
changeFiles();
} catch (Exception …Run Code Online (Sandbox Code Playgroud) service android android-intent android-service android-notifications
好吧,我想打个电话
String newString = oldString.replaceAll("}","");
Run Code Online (Sandbox Code Playgroud)
但是我在尝试使用}时遇到错误:
String newString = oldString.replaceAll("\\}\\","");
String newString = oldString.replaceAll("\}\","");
String newString = oldString.replaceAll("//}//","");
String newString = oldString.replaceAll("/}/","");
Run Code Online (Sandbox Code Playgroud)
并且它们都不起作用.我怎么能这样做?
谢谢
这是错误:
10-19 12:17:44.907: W/System.err(7030): java.util.regex.PatternSyntaxException: Syntax error in regexp pattern near index 1:
10-19 12:17:44.907: W/System.err(7030): }
10-19 12:17:44.907: W/System.err(7030): ^
10-19 12:17:44.907: W/System.err(7030): at java.util.regex.Pattern.compileImpl(Native Method)
10-19 12:17:44.907: W/System.err(7030): at java.util.regex.Pattern.compile(Pattern.java:400)
10-19 12:17:44.907: W/System.err(7030): at java.util.regex.Pattern.<init>(Pattern.java:383)
10-19 12:17:44.907: W/System.err(7030): at java.util.regex.Pattern.compile(Pattern.java:374)
10-19 12:17:44.907: W/System.err(7030): at java.lang.String.replaceAll(String.java:1784)
10-19 12:17:44.907: W/System.err(7030): at com.rotaryheart.MainActivity$1.onClick(MainActivity.java:70)
10-19 12:17:44.907: W/System.err(7030): at …Run Code Online (Sandbox Code Playgroud) 我widget用a ImageButton和a 实现了一个TextView.那ImageButton发动activity其点击时.这activity将使用用户在活动上写入的内容更新窗口小部件文本EditText.现在问题是我只知道如何得到这样的ID:
for (int widgetId : allWidgetIds) {
// Create some random data
int number = (new Random().nextInt(100));
RemoteViews remoteViews = new RemoteViews(getApplicationContext()
.getPackageName(), R.layout.widget_layout);
Log.w("WidgetExample", String.valueOf(number));
//Here I should set text from edit text, but I'm using a random for testing.
remoteViews.setTextViewText(R.id.textView1,
"Random: " + String.valueOf(number));
appWidgetManager.updateAppWidget(widgetId, remoteViews);
}
Run Code Online (Sandbox Code Playgroud)
这段代码显然会改变所有id的数据,因为它的内部是a for.无论如何,我可以用我的意图通过点击的widgetId,所以我可以消除它for?这是我的widgetProvider:
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
// …Run Code Online (Sandbox Code Playgroud) 好吧,我正在尝试实现其中一项服务,我正在使用这里的代码:http : //developer.android.com/training/accessibility/service.html#create但我无法启用该服务,因为我不要在系统设置中看到它。有人可以帮我吗?
显现:
<service android:name=".MyAccessibilityService" >
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
</service>
Run Code Online (Sandbox Code Playgroud)
我的无障碍服务.java
import android.accessibilityservice.AccessibilityService;
import android.accessibilityservice.AccessibilityServiceInfo;
import android.util.Log;
import android.view.accessibility.AccessibilityEvent;
import android.widget.Toast;
public class MyAccessibilityService extends AccessibilityService
{
public static final String TAG = "volumeMaster";
@Override
public void onAccessibilityEvent(AccessibilityEvent event)
{
Log.v(TAG, "***** onAccessibilityEvent");
Toast.makeText(getApplicationContext(), "Got event from: " + event.getPackageName(), Toast.LENGTH_LONG).show();
}
@Override
public void onInterrupt()
{
Log.v(TAG, "***** onInterrupt");
}
@Override
public void onServiceConnected()
{
Log.v(TAG, "***** onServiceConnected");
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
info.eventTypes …Run Code Online (Sandbox Code Playgroud)