小编Hit*_*sit的帖子

如何在Android应用程序webview中使用Facebook访问令牌

在我的应用程序中,用户打开一个WebView移动版本的Facebook个人资料页面(http://m.facebook.com/some_page).我的问题是,打开时WebView,用户需要输入Facebook的用户名和密码.由于我已经通过FB SDK获得了Facebook访问令牌,并且用户可能已经安装了Facebook应用程序,我认为有一些方法可以在打开时跳过这个令人烦恼的登录Facebook的阶段WebView.

换句话说,我如何使用我的应用程序中已有的访问令牌WebView

android facebook android-webview

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

如何用指定的POST参数打开android浏览器?

我是我的应用程序,我需要在Android浏览器中打开一个链接.此页面只能通过POST接收一些数据.我可以将这些参数(数据)添加到启动浏览器的意图吗?

你知道这是否可行?如果是的话,你能给我一个提示吗?

android android-intent android-sdk-2.1

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

BackupManager未调用备份传输

好吧,所以我正在尝试将数据备份实施到我的应用程序中,并且一直在遵循本指南.我已经实现了我的BackupAgentHelper使用SharedPreferencesBackupHelper.我没有得到任何错误,并且我确定dataChanged()在所有首选项更改后调用,但是当我测试备份(`adb shell bmgr run)时,我在LogCat中获取此信息:

07-07 12:29:00.258: V/BackupManagerService(291): Scheduling immediate backup pass
07-07 12:29:00.258: V/BackupManagerService(291): Running a backup pass
07-07 12:29:00.258: V/BackupManagerService(291): clearing pending backups
07-07 12:29:00.258: V/PerformBackupTask(291): Beginning backup of 1 targets
07-07 12:29:00.289: V/BackupServiceBinder(291): doBackup() invoked
07-07 12:29:00.289: D/PerformBackupTask(291): invokeAgentForBackup on @pm@
07-07 12:29:00.297: I/PerformBackupTask(291): no backup data written; not calling transport
Run Code Online (Sandbox Code Playgroud)

所以为了参考,在我的清单中我添加了:

<application
        android:allowBackup="true"
        android:backupAgent="com.kcoppock.sudoku.SudokuBackupAgent"
Run Code Online (Sandbox Code Playgroud)

以及

<meta-data
        android:name="com.google.android.backup.api_key"
        android:value="my_key_goes_here" />
Run Code Online (Sandbox Code Playgroud)

我的BackupAgentHelper实现如下:

public class SudokuBackupAgent extends BackupAgentHelper {
    static final String …
Run Code Online (Sandbox Code Playgroud)

backup android sharedpreferences android-backup-service

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

onRestore没有为我的自定义BackupAgent调用

我的Android应用中有一些数据要备份和恢复.为此我创建了一个自定义实现BackupAgent.

在我的清单中包含了备份代理,如下所示

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    android:installLocation="auto"
    package="com.myapp"
    android:versionCode="14"
    android:versionName="1.13" >

    <application
        android:backupAgent="com.myapp.MyBackupAgent">

        <meta-data
            android:name="com.google.android.backup.api_key"
            android:value="my key" />
Run Code Online (Sandbox Code Playgroud)

我已经包含了备份服务api密钥,虽然我正在使用模拟器(Android 2.2)进行测试,但它并不是必需的,因为它使用本地备份传输.

为了进行备份和恢复的测试,我已经完成了以下操作:

  • 安装我的应用程序启动模拟器.
  • 启用备份

    adb shell bmgr enable true

  • 调用我的代码部分是调用BackupManager类中的dataChanged方法.

  • 手动启动备份操作

    adb shell bmgr run

  • 在日志中检查我的自定义BackupAgent的onBackup方法被调用.

  • 卸载应用程序
  • 重新安装该应用程序
  • 如果调用了onRestore方法,请检查日志.

问题是onRestore方法似乎没有被调用,我不知道为什么.重新安装应用程序或使用adb手动触发还原后,我在控制台中看到以下内容.

$adb shell bmgr restore com.myapp
restoreStarting: 2 packages
restoreFinished: 0
done
Run Code Online (Sandbox Code Playgroud)

和另一个在日志中

D/AndroidRuntime( 8259):
D/AndroidRuntime( 8259): >>>>>>>>>>>>>> AndroidRuntime START <<<<<<<<<<<<<<
D/AndroidRuntime( 8259): CheckJNI is ON
D/AndroidRuntime( 8259): --- registering native functions ---
D/BackupManagerService(   59): MSG_RUN_RESTORE observer=android.app.backup.IRestoreObserver$Stub$Proxy@450e16a8
V/LocalTransport(   59): start restore 1 …
Run Code Online (Sandbox Code Playgroud)

backup android restore android-backup-service

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

在android中有任何方法可以在卸载后保留SharedPreferences

我保留了一些应用程序元数据SharedPreferences.每当我卸载应用程序并重新安装它时,都会SharedPreferences被删除.

有没有办法让它保留,以便如果用户进行卸载并重新安装,他们可以恢复他们的旧数据?

android android-preferences android-backup-service

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

找出ActionBar是否堆叠

如果您向自己添加了标签ActionBar,它们将以ActionBar纵向模式在手机上进行额外堆叠.有没有一种简单的方法可以确定是否发生了这种情况?

我附上了YouTube应用的两个屏幕截图.第一个显示法线ActionBar,其中有标签,第二个显示堆叠的标签ActionBar.

Youtube App(风景) Youtube App(肖像)

android android-ui android-actionbar

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

如何在Android中启用A2DP接收器功能?

我正在开发一个使用Gingerbread 2.3.4作为操作系统的定制嵌入式设备.现在,该设备应该能够播放来自其他支持A2DP的设备(如iPhone或其他Android设备)的音频流.我知道姜饼包括Bluez堆栈4.69,它具有A2DP接收器功能.但是,我怀疑Android是否公开了这些API.

您对我如何实现此功能有任何想法吗?由于我没有开发通用的Android应用程序,因此将会欣赏任何类型的非标准方法.我认为Bluez即使在Android中也可以通过DBus接口直接访问堆栈.

android bluetooth android-ndk a2dp

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

Android Spinner - onItemSelected/setOnItemSelectedListener未触发

这让我疯了,因为这是我以前做过的事情,但是无法弄清楚为什么它现在不起作用......

我有一个菜单按钮,以通常的方式通过menu.xml文件和onOptionsItemSelected带有开关的方法实现,创建并显示微调器.

我添加了setOnItemSelectedListener,但它似乎永远不会触发.在微调的出现,我选择一个选项或背出来,既不onItemSelectedonNothingSelected调用.

这是菜单按钮处理开关语句的"case"和"return true"之间的所有代码.(topThis是一个引用活动上下文的变量 - 适用于应用程序中的所有其他toast)

String[] widgetModes = {"Mode 1", "Mode2"};
ArrayAdapter<String> widgetModeAdapter = new ArrayAdapter<String> (this, android.R.layout.simple_spinner_item, widgetModes);
widgetModeAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

Spinner widgetModeSpinner = new Spinner(this);
widgetModeSpinner.setAdapter(widgetModeAdapter);
widgetModeSpinner.setPrompt("Choose Widget Mode");

widgetModeSpinner.setOnItemSelectedListener(new OnItemSelectedListener() 
{
    @Override
    public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) 
    {
        Toast.makeText(topThis, "derp", Toast.LENGTH_LONG).show();
    }

    @Override
    public void onNothingSelected(AdapterView<?> parentView) 
    {
        Toast.makeText(topThis, "herf", Toast.LENGTH_LONG).show();
    }
});

widgetModeSpinner.performClick();
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我模糊地怀疑我正在以Spinner编程方式创建的事实是问题......

android triggers listener spinner android-layout

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

内容提供商的小部件; 不可能使用ReadPermission?

所以我刚为我的应用程序实现了一个小部件.它通过我的数据从数据库中获取数据ContentProvider.我在清单中定义了自己的读/写权限,说明我使用它们(似乎没有什么区别),并在内容提供程序中要求它们:

<!-- Define my permissions for the provider -->
<permission
    android:name="com.nononsenseapps.notepad.permissions.read"
    android:description="@string/permission_read_desc"
    android:label="@string/permission_read_label"
    android:permissionGroup="android.permission-group.PERSONAL_INFO"
    android:protectionLevel="normal" />
<permission
    android:name="com.nononsenseapps.notepad.permissions.write"
    android:description="@string/permission_write_desc"
    android:label="@string/permission_write_label"
    android:permissionGroup="android.permission-group.PERSONAL_INFO"
    android:protectionLevel="normal" />
......
<uses-permission android:name="com.nononsenseapps.notepad.permissions.read" />
<uses-permission android:name="com.nononsenseapps.notepad.permissions.write" />
<uses-permission android:name="android.permission.BIND_REMOTEVIEWS" />
......
<provider
        android:name=".NotePadProvider"
        android:authorities="com.nononsenseapps.NotePad"
        android:enabled="true"
        android:exported="true"
        android:label="@string/app_name"
        android:readPermission="com.nononsenseapps.notepad.permissions.read"
        android:syncable="true"
        android:writePermission="com.nononsenseapps.notepad.permissions.write" >
        <grant-uri-permission android:pathPattern=".*" />
    </provider>
Run Code Online (Sandbox Code Playgroud)

我通过a更新我的小部件Service(根据小部件教程):

    <!-- List Widget -->
    <receiver android:name="com.nononsenseapps.notepad.widget.ListWidgetProvider" >
        <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
        </intent-filter>

        <meta-data
            android:name="android.appwidget.provider"
            android:resource="@xml/listwidgetinfo" />
    </receiver>

    <service
        android:name="com.nononsenseapps.notepad.widget.ListWidgetService"
        android:exported="false"
        android:permission="android.permission.BIND_REMOTEVIEWS" />
Run Code Online (Sandbox Code Playgroud)

而这Service反过来做到这一点(包括一堆代码):

/**
 * …
Run Code Online (Sandbox Code Playgroud)

android android-widget android-contentprovider

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

Android Gingerbread上使用LocalStorage进行非法访问异常

我制作了一个Android/Phonegap应用程序,它在所有具有多个Android操作系统版本的设备上运行良好,除了一些姜饼(2.3)手机.我正在使用Phonegap 1.9.

调试代码,我实现了一个illegal access exception关于Javascript,每次我使用HTML5 localStorage.getItem()localStorage.setItem()方法.

如何localStorage在这些Android设备上启用这些功能?

android local-storage android-2.3-gingerbread cordova

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